by ranger207 | 2025-09-25 18:24:56+00:00
Say you're trying to go to google.com (dig resolves this for me right now as 64.233.177.100). Your packet leaves your laptop and travels over wifi to your access point, where it goes into a switch. The switch sees the IP, recognizes it's not part of your LAN (because you've set your network up as 192.168.168.0/24 and that IP's not part of that range) and forwards it to its gateway, the router. (Often the AP, switch, and router are colocated in one device, which can cause shortcuts.) The router forwards all its packets to its upstream, which depending on if you have fiber, cable, etc may mean a modem or something first. Say it goes to a modem, where it's put onto a coaxial cable, the other end of which is at your ISP.

Now the packet is in the ISP's network. Logically this will be a big pile of switches with some servers attached, such as CDNs and the like, and connected at points to other ISPs/backbone providers at IXes. Physically it's a bunch of neighborhood racks feeding to ISP datacenters scattered around the country and interconnected wither by the ISP's own cables or backbone providers. Your packet will traverse this network in a number of ways depending on the specifics. Maybe the ISP's switch recognizes that 64.233.177.100 is a CDN on a server in the ISP's datacenter, so it forwards it there. Maybe the address is outside of the ISP's network. The switch that your modem is plugged into will pass the packet along to a router of some sort which will have a routing table (which is distributed and updated by internal routing protocols like OSPF or IS-IS) which will tell it where to sent the packet. If the address is outside of the ISP's network, then the router will direct it to one of the IXes based on its routing information.

Now we're at the IX. Your packet has gone from your laptop, to your AP/switch/router, to your modem, to the ISP's switch, to the ISP's router, to several other ISP switches and routers, and is now at the ISP's router in the IX. The physical configuration of an IX is like any other datacenter: just a bunch of racks, this time with routers in them. There'll be Comcast's routers in one rack, Cox's in another, Lumen (a backbone provider) in another. Then each router will be cabled to each other router, just like you plug your desktop into your router at home. The routers will exchange routing information with BGP, and that information will include who has address 64.233.177.100 connected directly to their network, or if nobody has it then who has a connection to the network it's directly connected to, or if nobody has that then who has a connection to a network that's connected to the network that 64.233.177.100 is connected to, etc. Like your ISP's network, each other network is a logical mass of switches and routers, and a physical connection of datacenters, neighborhood routing racks, and IXes.

Maybe in this case 64.233.177.100 is in a datacenter connected to another ISP at the IX; in that case the packet will go to that ISP and through its internal network to the datacenter. Or maybe nobody connected to this IX has 64.233.177.100. In that case the packet will probably travel through one of the backbone providers' internal network to the IX where the ISP that does have 64.233.177.100 connected to it is connected.

Since physically an IX is just a bunch of routers in a rack, you can have things plugged into them other than other routers, although this is generally frowned upon. Many IXes have locked racks to prevent that