Router detection of NICs

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Post Reply
User avatar
Jezze
Member
Member
Posts: 395
Joined: Thu Jul 26, 2007 1:53 am
Libera.chat IRC: jfu
Contact:

Router detection of NICs

Post by Jezze »

Hi,

This has buggered me for a while so I'll just ask here... my network understanding is not the best so if I've missed something basic I can only say I'm sorry.

I have a real physical RTL8139 network card and I have written drivers for it. On the network stack side I have basically nothing except ARP support. When running in a virtualized environment like QEMU I can send an arping to my OS and the network card will reply properly but when I try it on my real machine there is no IRQ triggering when sending traffic. I can see that the driver starts, I can see I've been given the IRQ 6 and I can see that an IRQ can be triggered because if I unplug the network cable an IRQ is fired. But for some reason no traffic I try to send to it raises an IRQ. The machine can dualboot into Ubuntu so I know the card works.

My lan setup is like this:

PC <-> ROUTER <-> PC

If I open and look in my router I can see that it has not detected that my machine is connected to the network. What am I missing? Any ideas?
Fudge - Simplicity, clarity and speed.
http://github.com/Jezze/fudge/
mateuszb
Member
Member
Posts: 32
Joined: Sun Jan 16, 2011 1:27 am

Re: Router detection of NICs

Post by mateuszb »

1. Is the link up? Does this card have a link status register? If so, can you check it?
2. Do you advertise your MAC station address over ARP ? If so, what are the destination and source addresses on the ethernet frame ?
3. Does the card do any MAC based filtering ? If so, is it disabled?
User avatar
bluemoon
Member
Member
Posts: 1761
Joined: Wed Dec 01, 2010 3:41 am
Location: Hong Kong

Re: Router detection of NICs

Post by bluemoon »

Have you try elimiate the router and try direct connection from PC to PC?
some router may filter traffic by associate MAC address with static/cached IP - so the router may assume you using the same IP as ubuntu and filter other IP packets automatically - try hard reset the router may solve this.

furthermore, expensive router may filter multicast packets and you need to send the IGMP packets to join a group.
User avatar
Jezze
Member
Member
Posts: 395
Joined: Thu Jul 26, 2007 1:53 am
Libera.chat IRC: jfu
Contact:

Re: Router detection of NICs

Post by Jezze »

Thanks for all the suggestions!

@mateuszb:

1, No I haven't checked that but I will do that today and see what it says. It would surprise me if it said off though.
2, I tried to send an announcement yesterday. What I did was that I sent an arp request (operation=1) with SPA=TPA and with both THA=0 and THA=SHA. For the ethernet frame I was not sure at all what to send and I couldn't find any information on that so I tried THA=0 and THA=SHA. Which is the correct one? I also tried sending with THA=the MAC of the router for both the ethernet frame and arp packet.
3, I don't think so but I will doublecheck.

@bluemoon: The thing is my damn switch died on me a while back so I have to use a router right now. I'll try to check what you said.
Fudge - Simplicity, clarity and speed.
http://github.com/Jezze/fudge/
Post Reply