Hi, Sam? Thanks for your reply. For current status, the issue is not related with hardware, for example router/switch as you mention. For 2) , although port 13 have work correctly in IPV4 case, that mean port 13 is OK to work. Anyway, I change it to port 1234 and it work correctly also. When I run ipv4 test example code, I use tcpdump to capture the packets, I can see TCP packet with destination port 1234 send out. Then I just replace one line of code as below to change ipv4 address to ipv6: hr = TF_SaveServer(tfHandle, _T("fe80::51f1:e86e:9e59:7add"), 1234, TF_SYSTEM); //hr = TF_SaveServer(tfHandle, _T("10.1.178.117"), 1234, TF_SYSTEM);
Then I rerun the example code, this time I also use tcpdump to capture the packets, it capture no any ipv6 packet, also not any packet with destination port=1234. Since tcpdump is run the same PC that the example code run, that mean the example code didn't generate any ipv6 packet at this time. So this issue is not only related to the example code itself.
In my case, both ipv4/ipv6 address are configurated for the ethernet port:[root@perf x64]# ifconfigeth0 Link encap:Ethernet HWaddr 00:0C:29:4C:50:12 inet addr:10.1.178.143 Bcast:10.1.178.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe4c:5012/64 Scope:Link UP BROADCAST RUNNING PROMISC MULTICAST MTU:1500 Metric:1 RX packets:14811221 errors:0 dropped:0 overruns:0 frame:0 TX packets:5708143 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:2250409712 (2.0 GiB) TX bytes:6800686209 (6.3 GiB)
What I want to know is, when both ipv4/ipv6 stack existed, can your library automaticlly know which stack it will used? If it can, why I change the ipv4 to ipv6 address, it don't send out any ipv6 packets and return failed with error 4.
For 3) Our customer want to use ipv6 address directly. Only under no other way can solve this issue, they will consider it.
Thanksdaniel