Linux / RHEL5:IPv6上的UDP不能在同一台PC上运行

时间:2012-03-12 13:42:06

标签: linux sockets udp ipv6

我尝试在同一台PC上设置带有UDP和IPv6的netcat服务器/客户端。

以下是我电脑上的界面:

[root@rh55hp360g7ss7 trunk_dir]# ifconfig
eth0      Link encap:Ethernet  HWaddr xxx
          inet addr:192.168.255.166  Bcast:192.168.255.255  Mask:255.255.255.0
          inet6 addr: fe80::1ec1:deff:fef3:4870/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:21948499 errors:0 dropped:0 overruns:0 frame:0
          TX packets:24300265 errors:0 dropped:0 overruns:0 carrier:0
          collisions:360733 txqueuelen:1000
          RX bytes:3645218404 (3.3 GiB)  TX bytes:1672728274 (1.5 GiB)
          Interrupt:162 Memory:f4000000-f4012800

然后我启动netcat服务器:

nc -6ul fe80::1ec1:deff:fef3:4870%eth0 5678

和netcat客户端(仍然在同一台PC上)

nc -6u fe80::1ec1:deff:fef3:4870%eth0 5678

但是,当我在NetCat客户端输入内容时,没有任何内容被转移到服务器上。

如果

,同样的例子正在运作
  • 我在另一台电脑上启动netcat客户端
  • 我正在使用TCP而不是UDP(即当我删除-u选项时)
  • 当我使用IPv4而不是IPv6时(即当我删除-6选项并且我使用IPv4地址时)。

任何想法?

TSohr。

以下是路由表,以防它可能有所帮助:

[root@rh55hp360g7ss7 trunk_dir]# route -A inet6
Kernel IPv6 routing table
Destination                                 Next Hop                                Flags Metric Ref    Use Iface
fe80::/64                                   *                                       U     256    0        0 eth0
::1/128                                     *                                       U     0      265       5 lo
fe80::1ec1:deff:fef3:4870/128               *                                       U     0      10551       1 lo
ff00::/8                                    *                                       U     256    0        0 eth0
[root@rh55hp360g7ss7 trunk_dir]#
##已添加2012-03-13
  • 使用:: 1,它正在工作。
  • 尝试在PC上运行SIP堆栈时遇到同样的问题。

1 个答案:

答案 0 :(得分:0)

这只是Red Hat和 link-local 范围的问题。使用具有全局范围的地址时,其工作正常。

我尝试使用Ubuntu 10.4,这里也使用链接本地地址。

这是我的红帽发行版:     [root @ BETESIP02 sipp] #uname -a     Linux BETESIP02 2.6.18-194.el5PAE#1 SMP Tue Mar 16 20:00:21 EDT 2010 i686 i686 i386 GNU / Linux