How old games find each other on a LAN
You open the multiplayer menu, pick "Local Area Network", and a list of games appears. Nobody typed an IP address. Nobody configured a server. On a real LAN in 2003 that just worked, and on the internet in 2026 the same list stays empty. The reason is simple once you see how the list gets filled in the first place.
Finding and connecting are two different jobs
Every LAN game does two things. First it has to discover that a game exists: who is hosting, what map, how many slots are free. Then it has to connect to that host and exchange game traffic.
Connecting is ordinary networking. A client sends packets to a specific address and port, and the host answers. That part can work over the internet if the address is reachable.
Discovery is the fragile part. The client does not know any address yet. So it shouts into the room and waits to hear who answers. How it shouts depends on the era of the game.
UDP broadcast: shouting at everyone
Most games from the late 90s onward use UDP broadcast. The client sends a small query to a broadcast address, and every machine on the same network segment receives it. Any machine running a host answers directly with its details.
There are two kinds of broadcast address you will see:
255.255.255.255— the "limited broadcast". It means "everyone on this link". Routers never forward it.- The subnet broadcast, for example
192.168.1.255on a192.168.1.0/24network. It means "everyone in this subnet". Routers almost always drop it too, because forwarding it has been a known source of abuse for decades.
Some examples of how familiar games do it:
| Game | How it discovers |
|---|---|
| Warcraft III | UDP broadcast on port 6112 |
| Counter-Strike 1.6 | The LAN tab broadcasts a server query on the usual server ports around 27015 |
| Age of Empires II (original) | DirectPlay session enumeration, which broadcasts on the local network |
| StarCraft (1.18 and later) | "Local Area Network (UDP)", which replaced the old IPX option |
The details differ, but the idea is the same: one packet to everyone, answers come back from whoever is hosting.
IPX: the protocol that time forgot
Before TCP/IP won, a lot of office networks ran Novell's IPX/SPX. Games followed. Doom, Duke Nukem 3D, Warcraft II, the original Command & Conquer and early StarCraft all shipped with IPX multiplayer, and for many of them it was the only LAN option.
IPX had its own addressing and its own broadcast, and it was never designed to be routed across the internet. Windows stopped shipping an IPX protocol stack with Vista. On a modern PC, an IPX-only game simply finds no network at all.
The usual workaround is a wrapper. Tools such as IPXWrapper, or the IPX emulation in DOSBox, take the game's IPX packets and carry them inside UDP. From the game's point of view IPX still exists. From the network's point of view it is ordinary UDP broadcast, which brings us back to the previous section and the same limits.
If a game offers both IPX and TCP/IP (or UDP), pick the IP option. It is one less translation layer and one less thing to break.
Multicast: shouting at a group
A smaller number of games use multicast instead of broadcast. The client sends to a group address in the 224.0.0.0/4 range, and only machines that joined that group receive it. On a home network this behaves a lot like broadcast.
Multicast can be routed in principle, but it needs routers along the path to cooperate, usually through IGMP and a multicast routing protocol. Home routers do not do that toward the internet, and ISPs do not carry your multicast to your friend's house. In practice multicast discovery is just as local as broadcast.
Why discovery fails across the internet
Put four friends in four cities and every assumption above breaks at once.
- Broadcasts stop at the router. Your query reaches your own PC, your TV and your printer. It never leaves the house.
- You are on different subnets. Your PC might be
192.168.1.20and your friend's192.168.0.14. Even if a packet could get there, the game thinks the other side is not "local". - NAT hides everyone. Your router has one public address and many devices behind it. An unsolicited packet from outside has nowhere to go unless a port is forwarded.
- Private addresses overlap. Half of Europe is on
192.168.1.0/24. Those addresses mean nothing outside each home.
Port forwarding and typing the host's public IP sometimes fixes the connecting part. It does nothing for discovery. The game list stays empty, and some games have no "join by IP" box at all.
How a virtual LAN fixes it
A virtual LAN gives the game what it expects: one flat network where everyone can hear everyone. That is what LanOrbit does.
When you join a room, the app brings up a virtual network adapter on your PC with an address in 10.60.0.0/16. Every player in the room gets an address in that same range. To Windows and to the game, it looks like one more network card plugged into one more switch.
When the game broadcasts on that adapter, the app picks the packet up, carries it to the other players in the room and delivers it to their adapters. Their games see an ordinary local broadcast and answer. The answer comes back the same way. The game list fills in.
After that, the game connects to the host's 10.60.x.x address like it would on a real LAN. The traffic takes whichever path through our nodes currently measures the lowest ping, which matters more than most people expect. We wrote about why in Why your ping is high even on fibre.
No port forwarding, no public IP, and the room is only visible to people with the password or invite link.
When the list is still empty
A virtual LAN removes the network problem, but Windows can still get in the way. The common causes:
The game broadcasts on the wrong adapter
Some older games only send discovery on the first network adapter they find, which is usually your real Ethernet or Wi-Fi card. The broadcast never touches the virtual adapter. The fix is either to join by IP using the host's 10.60.x.x address, or to follow the steps in the game's guide. Our per-game pages, such as the ones for Warcraft III, Counter-Strike 1.6 and Age of Empires II, cover the specifics.
The firewall blocks the reply
Windows may treat a new network as Public and block incoming traffic for a game it has never seen. Allow the game through Windows Defender Firewall when prompted, or add the rule by hand.
Different game versions
Many games ignore discovery replies from a different version or patch level. The host exists; your game just refuses to list it. Everyone should be on exactly the same version.
If none of that helps, the PC support page walks through the checks one by one. Most of the time it is one of the three above.