[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

(usagi-users 04093) IPv6 CARE: monitor execution of programs and assess their IPv6 compliance



Hello all,
For those interested in IPv6 migration of networking applications, I would like to point you to this open source linux tool at http://sourceforge.net/projects/ipv6-care
It is called "IPv6 CARE": "IPv6 Compliance Automatic Runtime Experiment".
I developed it as part of the EGEE project (http://www.eu-egee.org/), in order to ease the transition to IPv6 of the grid middleware called "gLite".

Here is an example of usage.
We want to know if a version of telnet is IPv6 compliant or not. We prefix the command and run it this way:

$ ipv6_care check -v telnet localhost 9876
IPV6 CARE detected: inet_addr() with [ cp=localhost ]
IPV6 CARE detected: gethostbyname() with [ name=localhost ]
IPV6 CARE detected: inet_ntoa() with [ in=127.0.0.1 ]
Trying 127.0.0.1...
IPV6 CARE detected: socket() with [ domain=AF_INET type=SOCK_STREAM protocol=ip ]
IPV6 CARE detected: connect() with [ socket=3 address.ip=127.0.0.1 address.port=9876 ]
telnet: Unable to connect to remote host: Connection refused
------------------------------------------------------------------------------
IPv6 diagnosis for 'telnet localhost 9876' was generated in: /tmp/ipv6_diagnosis/telnet/by_pid/pid_6541
------------------------------------------------------------------------------
$

We can easily see that this version of telnet is not IPv6 compliant because some of the function calls detected are not IPv6 compliant (for ex. gethostbyname()).
If needed, more information (location of those function calls in the source code, tip about how to avoid them etc.) has been generated in the reported directory (in this case /tmp/ipv6_diagnosis/telnet/by_pid/pid_6541).

The documentation is also available on the sourceforge download page of the tool.
Feel free to send me any question, comment, or improvement suggestion you may have.

Thank you,
Etienne Duble
CNRS / UREC
EGEE III SA2