Re: network loopback based kernle module and ping - calrification question

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

 



Hi Mark Ryden,
There must be some thing you miss out while following Mulyadi's instruction because when i try
1) insmod nic-driver.ko
2) (setting IPADDR=128.0.0.2 in /etc/sysconfig/network-script/ifcfg-nic)
3)ping 128.0.0.2

    PING 128.0.0.2 (128.0.0.2) 56(84) bytes of data.
    64 bytes from 128.0.0.2: icmp_seq=0 ttl=64 time=0.046 ms
    64 bytes from 128.0.0.2: icmp_seq=1 ttl=64 time=0.045 ms
    64 bytes from 128.0.0.2: icmp_seq=2 ttl=64 time=0.044 ms
4)ifdown lo
    [root@localhost Mar6]# ping 128.0.0.2
    connect: Invalid argument

I think that your driver my be linked with lo (atleast something connecting b/w lo and your dirver) but i dont agree with this argument
    > A speculation you can consider.... it could be the interface "lo" that   
    > is replying. IIRC, every address that begins with 127. prefix is
    > actually understood by the OS network stack as request to "chat" with
    > the default loop back address.
because nic-driver is also working with other address starting with 128.
Mark Ryden <markryde@xxxxxxxxx> wrote:
Hi Mulyadi ,


1) It works also after "ifdown lo".

2) I also tried setting "inet addr:128.0.0.1 Mask:255.0.0.0" in
/etc/sysconfig/network-scripts/ifcfg-nic and than
"ping 128.0.0.1" and it also send a resoonse to ping.
So my question is still the same :
who does answer me ? there is no handling of recieve interrupts in that module.
What causes the packet which is sent to 128.0.0.1 to give this answer ?
where is this mechanism implemented in the kernel ?


Regards,
Mark


On 3/2/07, Mulyadi Santosa wrote:
> Hi ...
> >
> > Now what I do not understand is:
> > when I ran
> > ping 127.0.0.2
> > I got:
> > PING 127.0.0.2 (127.0.0.2) 56(84) bytes of data.
> > 64 bytes from 127.0.0.2: icmp_seq=1 ttl=64 time=0.046 ms
> > 64 bytes from 127.0.0.2: icmp_seq=2 ttl=64 time=0.040 ms
> >
> > who does answer me ? there is no handling of recieve interrupts in
> > that module.
> > What causes the packet which is sent to 127.0.0.2 to give this answer ?
> > where is this mechanism implemented in the kernel ?
> A speculation you can consider.... it could be the interface "lo" that
> is replying. IIRC, every address that begins with 127. prefix is
> actually understood by the OS network stack as request to "chat" with
> the default loop back address. You may try it by yourself, try something
> like this while you nic module isn't loaded:
> ping 127.1.1.1
> ping 127.1.2.3
> and so on.
>
> So, assuming I am right, try to down the "lo" interface 1st and see if
> you get your nic module running as expected.
>
> regards,
>
> Mulyadi
>
>

--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx
Please read the FAQ at http://kernelnewbies.org/FAQ



Finding fabulous fares is fun.
Let Yahoo! FareChase search your favorite travel sites to find flight and hotel bargains.

[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux