Why I receive no answer from an ARP request?
I'm working on an embedded device that connects on local network with RJ45 and when the system sends an ARP request to know the mac address of the gateway, no answer at all.
If I clear the arp table on my Windows, the Windows asks exactly the same ARP request and got an answer!
I sniffed the packet and the only difference inside the request packet is a 0 trailer on the embedded device at the end of the packet and that the target mac address is ff:ff:ff:ff:ff:ff where the windows one is 00:00:00:00:00:00 (wikipedia seems to say that it should be ffffffffff)
I tried to changed the mac address in case my gateway banned the mac due to arp spam but it doesn't change anything. I also try with DHCP IP and static IP, same problem...
Windows packet:
Frame 1 (42 bytes on wire, 42 bytes captured) Frame is marked: False Arrival Time: Jan 29, 2010 12:05:49.775534000 Time delta from previous packet: -77.580549000 seconds Time since reference or first frame: 6354.738379000 second开发者_如何学Gos Frame Number: 1 Packet Length: 42 bytes Capture Length: 42 bytes Protocols in frame: eth:arp Ethernet II, Src: 00:1e:8c:b5:d0:00, Dst: ff:ff:ff:ff:ff:ff Type: ARP (0x0806) Address Resolution Protocol (request) Hardware type: Ethernet (0x0001) Protocol type: IP (0x0800) Hardware size: 6 Protocol size: 4 Opcode: request (0x0001) Sender MAC address: 00:1e:8c:b5:d0:00 (00:1e:8c:b5:d0:00) Sender IP address: 192.168.0.14 (192.168.0.14) Target MAC address: 00:00:00:00:00:00 (00:00:00:00:00:00) Target IP address: 192.168.0.1 (192.168.0.1) 0000: FF FF FF FF FF FF 00 1E 8C B5 D0 00 08 06 00 01 ................ 0010: 08 00 06 04 00 01 00 1E 8C B5 D0 00 C0 A8 00 0E ................ 0020: 00 00 00 00 00 00 C0 A8 00 01 ..........
Embedded device packet:
Frame 1 (60 bytes on wire, 60 bytes captured) Frame is marked: False Arrival Time: Jan 29, 2010 12:07:04.257748000 Time delta from previous packet: -3.098335000 seconds Time since reference or first frame: 6429.220593000 seconds Frame Number: 1 Packet Length: 60 bytes Capture Length: 60 bytes Protocols in frame: eth:arp Ethernet II, Src: 00:04:a3:12:34:05, Dst: ff:ff:ff:ff:ff:ff Type: ARP (0x0806) Trailer: 000000000000000000000000000000000000 Address Resolution Protocol (request) Hardware type: Ethernet (0x0001) Protocol type: IP (0x0800) Hardware size: 6 Protocol size: 4 Opcode: request (0x0001) Sender MAC address: 00:04:a3:12:34:05 (00:04:a3:12:34:05) Sender IP address: 192.168.0.129 (192.168.0.129) Target MAC address: ff:ff:ff:ff:ff:ff (ff:ff:ff:ff:ff:ff) Target IP address: 192.168.0.1 (192.168.0.1) 0000: FF FF FF FF FF FF 00 04 A3 12 34 05 08 06 00 01 ..........4..... 0010: 08 00 06 04 00 01 00 04 A3 12 34 05 C0 A8 00 81 ..........4..... 0020: FF FF FF FF FF FF C0 A8 00 01 00 00 00 00 00 00 ................ 0030: 00 00 00 00 00 00 00 00 00 00 00 00 ............
In fact, It was a problem with the TX where the polarity was inverted and cause these problems.
I inverted the polarity and now it works perfectly.
精彩评论