joylucks has asked for the wisdom of the Perl Monks concerning the following question:

I am using module Net:RawIp
Net-RawIp version is: Net-RawIp-0.25. Linux machine OS is: [root@auto-12 tools]# uname -a Linux auto-12 2.6.18-92.el5 #1 SMP Tue Jun 10 18:49:47 EDT 2008 i686 i +686 i386 GNU/Linux The command is as follows: [root@auto-12 examples]# ./land --src=50.254.1.12 --srcport=1032 --src +mac=00:1B:21:01:F1:8D --dest=50.100.1.3 --destport=1033 --type=tcp -- +number=3000 --srceth=eth0 constructing tcp packets (tap) Can't get interface IP address at /usr/lib/perl5/site_perl/5.8.8 +/i386-linux-thread-multi/Net/RawIP.pm line 223. The perl script part is: $packet->ethnew(eth0); <=================================complain if ($arg_src_mac) { $packet->ethset(source=>$arg_src_mac); } if ($arg_dest_mac) { $packet->ethset(dest=>$arg_dest_mac); } Any idea why the tap function of eth.c is not working? Thanks

Replies are listed 'Best First'.
Re: (tap) Can't get interface ip address
by Perlbotics (Archbishop) on Mar 09, 2009 at 23:12 UTC

    Hi, I guess you need to quote the interface name ...

    ... $packet->ethnew("eth0"); # <=== no complains anymore? if ($arg_src_mac) { $packet->ethset(source=>$arg_src_mac); } ...
Re: (tap) Can't get interface ip address
by joylucks (Initiate) on Mar 09, 2009 at 23:49 UTC
    I found the problem: I used an non-exist eth. Thanks for the answers - folks Chris
      On unix based systems you can use /sbin/ifconfig command to find the active ethernet interface and access it from Net::RawIP, I recently faced this problem.

      Vivek
      -- In accordance with the prarabdha of each, the One whose function it is to ordain makes each to act. What will not happen will never happen, whatever effort one may put forth. And what will happen will not fail to happen, however much one may seek to prevent it. This is certain. The part of wisdom therefore is to stay quiet.

        Could also be in /etc, depending on the type of *nix (HP-UX, for example).

        --MidLifeXis

Re: (tap) Can't get interface ip address
by moritz (Cardinal) on Mar 09, 2009 at 23:12 UTC
    What exactly is the error message? "complain" is not very specific. Anyway, you might have to quote the string eth0 like this: "eth0.
Re: (tap) Can't get interface ip address
by joylucks (Initiate) on Mar 09, 2009 at 23:37 UTC
    The complain message is exactly as follows: (tap) Can't get interface IP address at /usr/lib/perl5/site_perl/5.8.8 +/i386-linux-thread-multi/Net/RawIP.pm line 223.