Friday, September 23, 2016

PC can access another LAN devices's embedded web server when wired to router/switch, but not over WiFi



For work, I have designed a hardware 'box' (actually an industrial control gizmo) which has an embedded web server for the purpose of configuration (much like a regular domestic Internet router has a web server for similar purposes). It's usually used with a direct connection to a laptop, so that a regular browser (IE8, FF, etc.) may be used to configure the box.




The problem that has recently come to light is that if the 'box' is connected via wired Ethernet to certain Netgear or Linksys WiFi switch/router units and then an attempt is made to access the box via the switch using a WiFi connection to the switch from the laptop, the laptop browser is unable to connect to the box (resulting in a typical 'server not found' error). However, if the laptop is connected via wired connection to the switch, the box can be accessed just fine. It's almost as though the problem is specific to just WiFi.



To clarify with some examples:




  • Linksys or Netgear wireless router/switch(/modem) configured with IP of 192.168.0.5.


  • My custom hardware with its embedded web server configured with static IP of 192.168.0.100 and has a wired Ethernet connection to the Linksys / Netgear unit.


  • PC obtains IP via DHCP from the Linksys/Netgear unit; let's say it's at 192.168.0.200.


  • If the PC is connected via wired connection, the browser can access the box at 192.168.0.100 just fine.


  • If PC connected to the router over WiFi, then it can't access the box. But it can happily access the router's own web server at 192.168.0.5.



  • Even when the PC's browser won't connect when WiFi is in use, I'm able to successfully ping the hardware box from the PC.


  • From what I can recall, when the connection doesn't work over WiFi, I don't seen an entry for 192.168.0.100 with arp -a. When the connection is working (PC has wired connection to router), arp -a shows me an entry for 192.168.0.100.




I have been currently trying to investigate this today with a Linksys WRT54G. At first, I had the problem as described above. Later, after much messing about, it somehow resolved itself. The only procedure I recall doing immediately before it magically started working over WiFi was a series of successful ping tests from the router itself to the hardware box.



This problem has been reported with several Netgear / Linksys routers, though it will be a bit of time before I can determine the model numbers.



Any help would be much appreciated. Please let me know if there's any further information or logs or tables I could provide.


Answer




This is quite embarrassing, but it turned out that it was due to the MAC address that I had assigned to the box. Being an R&D PCB without production assigned MAC, I just put a dummy MAC address in. What I had put in had the multicast bit set (if I remember right - this is going back months now). I changed it to a more standard MAC address and all was fine.


No comments:

Post a Comment

linux - How to SSH to ec2 instance in VPC private subnet via NAT server

I have created a VPC in aws with a public subnet and a private subnet. The private subnet does not have direct access to external network. S...