lft and/or tcptraceroute - SGI

This is a discussion on lft and/or tcptraceroute - SGI ; I can't seem to get these programs to work... lft compiles fine (as does libpcap) but all IP addresses are listed as 0.0.0.0. It doesn't matter if the IP address is resolved to an address or not; it is always ...

+ Reply to Thread
Results 1 to 2 of 2

Thread: lft and/or tcptraceroute

  1. lft and/or tcptraceroute

    I can't seem to get these programs to work...

    lft compiles fine (as does libpcap) but all IP addresses are listed as
    0.0.0.0. It doesn't matter if the IP address is resolved to an address
    or not; it is always reported as 0.0.0.0.

    There was no problem compiling libpcap either.

    Compiling tcptraceroute requires libnet.

    Libnet requires the use of a port.mak file but there isn't any for
    Irix. The one for FreeBSD and the one for Linux both complain about
    index_t and refuse to compile. None of the other files in libnet look
    like they would be appropriate for an Irix compilation.

    None of this stuff was "installed" but rather was compiled in /tmp and
    utilized from there. lft had no dependencies on libpcap but rather
    used the static version (apparently). lft seems to work except for the
    lack of IP addresses. Using -n makes no difference, and using -i makes
    no difference.

    Also, when using lft, the destination address is always listed as
    255.255.255.255 - no matter what is on the command line.

    Here is a (sanitized) example lft output:

    # lft -E -s 53 -d 53 -i 10.10.10.10
    Tracing .......?????????????

    TTL LFT trace to 255.255.255.255:53/tcp
    1 am10.example.com (0.0.0.0) 0.6ms
    2 am6.example.com (0.0.0.0) 14.2ms
    3 0.0.0.0 13.9ms
    4 0.0.0.0 1.2ms
    5 0.0.0.0 1.2ms
    6 0.0.0.0 169.8ms
    ** [firewall] the next gateway may statefully inspect packets
    7 0.0.0.0 170.1ms
    ** [53/tcp failed] Try alternate options or use -V to see packets.

    # uname -a
    IRIX64 myexample 6.5 04070317 IP30

    Can some kind soul help me out?


  2. Re: lft and/or tcptraceroute

    In article <1124142504.583713.148200@z14g2000cwz.googlegroups. com>,
    "David Douthitt" wrote:

    : lft compiles fine (as does libpcap) but all IP addresses are listed as
    : 0.0.0.0. It doesn't matter if the IP address is resolved to an address
    : or not; it is always reported as 0.0.0.0.

    Are you using GCC? There's a bug in GCC's IRIX ABI that affects functions like
    inet_ntoa() and a small handful of other functions.

    The page describes the bug:

    : gcc vs cc
    : Code that runs fine when compiled withe SGI cc and doesn't run when compiled
    : with gcc is possibly using calls to one of the following:
    : inet_ntoa, (and some other inet_XXX), semctl
    : (there may be others). These are functions that get passed or return structs
    : that are smaller than 16-bit long and not 8-bits long. gcc and SGI cc are
    : incompatible in the way they pass these structs so compiling with gcc and
    : linking with the SGI libc.so (which was compiled with the SGI cc) is likely
    : to cause these problems. Note that this problem is pretty rare since such
    : functions are not widely used. This should be considered a bug in gcc
    : (manifesting on IRIX) but is too involved to fix I'm told.

    Your best bet would be to get your hands on the SGI compilers rather than using
    GCC. They're really very good compilers.


    Cheers - Tony 'Nicoya' Mantler

    --
    Tony 'Nicoya' Mantler -- Master of Code-fu -- nicoya@ubb.ca
    -- http://nicoya.feline.pp.se/ -- http://www.ubb.ca/ --

+ Reply to Thread