Strange martian behavior when using switch vs hub
I have an old PC running an older version of linux with two network cards serving as my firewall router. The network cards are netgear 310tx cards.
Noticed traffic was not getting routed at times. Figured my switch was going bad, so I hooked up an old hub to keep keys systems communicating while I get a new switch. No problems with hub, but only has 5 ports.
Get new switch (different make/model from old one), install, a couple of my systems have connectivity problems, but others do not. Thinking it was a bad switch, returned it, got a new one just like my old one (which I thought was going bad, but worked for several years).
Hook it up, paying attention to my firewall console and notice martian header messages. Network traffic not getting routed at all. The interface for connected to LAN was slow to get started (my firewall can communicate to the Internet, but LAN communication was hosed).
System would "hang" spitting out martian header messages until I disconnected LAN cable.
Thinking network card may be bad, replaced it with another version of the same type. Same problems: martian header messages and traffic not getting routed.
HOWEVER, if I remove the switch and use my old hub, no problems. Networking appears to work for all systems connected to hub.
Since I and my wife work from home, I'm using the hub right now (with non-essential systems not connected due to limited ports). I can only do any real experimentation at night.
I have no idea why things would work differently between using a hub vs a switch. Could something have gone awry with the linux kernel (2.4.20-46.7)?
Any ideas on how to resolve and/or diagnose the problem would be greatly appreciated.