Friends, I built an ObsoNET and I've been struggling with a problem that I would like to check with other owners. All my network gateways are based on Linux and use vlans and bridges to build the network. Usually those devices create a vlan for the WAN connection (vlan2) and another one grouping the rest of the router ethernet ports (vlan1). Then they always configure a bridge on the vlan1 so all computers in that vlan can communicate.
Here is the thing. I have an MSX with obsonet connected to the vlan1. After loading InterNestor Lite, it can ping any other PC on the vlan, except the gateway. Using TCPDUMP on the router I can see ARP requests and responses on the VLAN, but ARP responses never get forwarded to the bridge. With a Windows or Linux PC, the ARP requests and responses flow correctly to the bridge and everything work.
Analyzing with more care I noticed that Obsonet is generating an ARP response frame that is 4 bytes larger than what the specification says for untagged frames. PCs generate a response with 46 bytes and the Obsonet with 50 bytes. I suspect the linux gateways are dropping those frames.
I tested it with multiple routers (all linux based), and none work with Obsonet. That includes an ASUS RT-AC5300, ASUS RT-AC66U, and two other routers provided by my telco operator (all linux based).
Fun part is that if I connect the Obsonet in a non-linux router, it works. I suspect those gateways are just ignoring the wrong bytes on the frame and accepting the ARP response, even if it is wrong.
I posted an issue on Nestor's github repo for the INL lite but I'm afraid he is not looking into that code anymore. https://github.com/Konamiman/MSX/issues/21
Help! Has anyone seen that behavior before?