2008-09-18 ------------ TCP, UDP checksums are now calculated. There is no need for ICMP recalculation as ICMP does not use pseudoheaders during checksum calculation, ie. checksum is not dependent on the IP header. This version also provides extra information (version number and modified checksums - old and new ones). Attached pcap files contain successful http session: from IPv4 host to IPv6 server. Useful commands: # As IPv6 traffic is converted to IPv4, kernel also sends Route unreachable ICMP messages. # That is a one way to get rid of them. ip6tables -I INPUT -s 2000::1 -d 2000::aaaa:aaaa --protocol icmpv6 -j DROP # enable v4/v6 traffic forwarding echo 1 > /proc/sys/net/ipv6/conf/all/forwarding echo 1 > /proc/sys/net/ipv4/conf/all/forwarding # add extra addresses ip a a 2000::1/64 dev eth0.1 ip a a 192.168.20.1/24 dev eth0.1 # load ip46nat module insmod /lib/modules/2.6.25.16/ip46nat.ko v6prefixm=2000:: v6prefixp=3000:: v4addr=192.168.1.0 # Useful for reading kernel messages (dmesg | tail sends the data via ssh immediately, # thus lots of extra useless messages are included) dmesg > /tmp/dmesg && tail -50 /tmp/dmesg