Subject: | IPv6 Support - with patch! |
There is currently no IPv6 support in Net::Ping relying on IPv4 only
routines like sockaddr_in and inet_ntoa/aton. I've created a patch to
support IPv6. It's 95% complete. I'm having issues calculating the
ICMPv6 checksum.
As you may know, the ICMPv6 checksum is different than ICMPv4 in that
ICMPv6 uses a pseudo-header (much like TCP/UDP) for checksum
calculation. How to find the source address if the user does not call
bind() before actually sending the packet?
Other than that, IPv4 remains the default and all tests result in the
same output for me as they did before the patch. IPv6 ping now also
works, only not with ICMPv6 as transport (due to aforementioned checksum
issue).
I'd like some help getting that last ICMPv6 checksum part resolved and
get this IPv6 support added to Net::Ping.
cheers.
Subject: | Ping.patch |
Message body is not shown because it is too large.