浏览 2123 次
锁定老帖子 主题:ruby ipv6
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2008-03-24  
那位人兄用过ruby 编写的ipv6程序,有什么提示的地方么。
我些了一个及其简答的程序但是就是不通过。
用ipv6本地链路地址写一个ipv6 socket小程序,在用环回地址的时候是正确的,但是在用普通的ipv6本地链路地址的时候就出错。

程序如下
1、
///////////////////////////////////////////////////////////////////////
require 'socket'
socket=UDPSocket.new(Socket::AF_INET6)
socket.bind("::1",12121)
loop do
msg,sender=socket.recvfrom(100)
host=sender[3]
puts "#{Time.now}:#{host} '#{msg}'"
end
///////////////////////////////////////////////////////////////////////
it is right,server can receive client message.


2\
///////////////////////////////////////////////////////////////////////
require 'socket'
socket=UDPSocket.new()                                 #Socket::AF_INET6
socket.bind("fe80::218:8bff:fe0d:e27c",12121)     #linux ipv6 link address
loop do
msg,sender=socket.recvfrom(100)
host=sender[3]
puts "#{Time.now}:#{host} '#{msg}'"
end
///////////////////////////////////////////////////////////////////////
Error,提示消息如下:
in 'connect':Invalid argument - connect(2) (Errno::EINVAL) from server 5

哪位兄台可以帮分析一下呀。为什么这么简答的情况都出问题。

ruby 对ipv6的支持应该很好吧。
我的平台是linux,ruby的安装包默认编译是支持ipv6的吧?

论坛首页 编程语言技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics