Richard van den Berg on Sun, 8 Jun 2003 18:58:08 -0400


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

Re: [tcptra-dev] tcptraceroute test suite


Michael C. Toren wrote:
Oops, you're right. This one-line fix should correct the problem:

That worked fine.. weird thing that it worked under Linux. I could not find the perldocs for sockaddr_in, I guess you did. :-)


This is much more concerning to me. Can you try sending the output of
"tcptraceroute -d localhost"?

$ tcptraceroute -d 127.0.0.1 debug: tcptraceroute 1.4 (2002-07-30) debug: Compiled with libpcap version 0.6, libnet version 1.0.2a debug: entering getinterfaces() debug: ifreq buffer set to 32 debug: Successfully retrieved interface list debug: Discovered interface lo0 with address 127.0.0.1 debug: Discovered interface eri0 with address 192.168.0.2 debug: Discovered interface hme0 with address 0.0.0.0 debug: Discovered interface sppp0 with address 62.234.101.241 debug: leaving getinterfaces() debug: Determined source address of 127.0.0.1 to reach 127.0.0.1 debug: entering finddev() debug: Destination matches local address of interface lo0; attempting to find loopback interface, o_nofilter set debug: finddev() returning lo0 error opening device lo0: /dev/lo0: No such file or directory

This result is the same with 1.4 and 1.5beta3. Everythings looks ok except for the last line. As far as I know Solaris does not have a device in /dev for loopback (and if it did, it would be called /dev/lo not /dev/lo0).

> It might also be interesting to see if the error is also present with
> libnet-1.1.x.

Now with libnet 1.1.1 (1.1.0 does not work on Solaris):

# ./tcptraceroute -d 127.0.0.1
debug: tcptraceroute 1.5beta3
debug: Compiled with libpcap 0.7, libnet 1.1.1 (API 110)
debug: entering getinterfaces()
debug: ifreq buffer set to 32
debug: Successfully retrieved interface list
debug: Discovered interface lo0 with address 127.0.0.1
debug: Discovered interface eri0 with address 192.168.0.2
debug: Discovered interface hme0 with address 0.0.0.0
debug: Discovered interface sppp0 with address 62.234.101.241
debug: leaving getinterfaces()
debug: Determined source address of 127.0.0.1 to reach 127.0.0.1
debug: entering finddev()
debug: Destination matches local address of interface lo0;
        attempting to find loopback interface, o_nofilter set
debug: finddev() returning lo0
error opening device lo0: /dev/lo0: No such file or directory

I don't see how this is a libnet problem. tcptraceroute does:

    if ((pcap = pcap_open_live(device, 0, 0, 0, errbuf)) == NULL)
        fatal("error opening device %s: %s\n", device, errbuf);

device here is /dev/lo0 ... I am not sure if this is a pcap issue or that we need to be smarter about which device to use for localhost on Solaris.

Sincerely,

Richard van den Berg

_______________________________________________
tcptraceroute-dev mailing list
tcptraceroute-dev@netisland.net
https://lists.netisland.net/mailman/listinfo/tcptraceroute-dev