Will a switch help for different subnets?

CZroe

Lifer
Jun 24, 2001
24,195
857
126
I currently use a hub to conect multiple PCs to my cable modem. My cable co is assigning IPs to each system, and file transfers over the network between PCs crawl as if they were going over the Internet (~500kbps). A quick check reveals that some PCs aren't even in the same subnet! Some have 24.240.X.X addresses and others have 24.241.X.X addresses with subnet masks of 255.255.0.0.

If I were to use a switch, it would be oblivious to TCP/IP packets and traffic and switch by ethernet frames and MAC addresses, but how would my PC sending the data get this if they are not on the same subnet?

I connected these same PCs through a router with four "switched ports" (I hope that means it functions as a hardware switch or an IP switch) and disabled the router's DHCP (Allowing my ISP to assign them when connected to a normal port). Sure enough, bandwidth slows to Internet speeds for all PCs. The router is a Linksys WET54G wireless draft-802.11g router/Access point, and unlike their normal AP/Router/Switch product, it does not say "with four port switch" on the box. It does say "with four switched ports" on the side in a small paragraph about it. This is why I doubt it's "switch" functionality (Because the cable modem is connected to one of the four ports and not the WAN port, it will not route even that traffic).
 

Lord Evermore

Diamond Member
Oct 10, 1999
9,558
0
76
Windows networking doesn't rely entirely on the IP addressing, so that may explain why the machines are able to see each other even though they're not on the same subnet. NetBIOS just uses broadcasts and assigns ID's for each machine based on the computer name. Since they're all on the same hub, they can see each other. If you put them on a switch, they may still see each other, because the switch has to broadcast the initial traffic in order to build the MAC address table for each port. The NetBIOS traffic will still be using the same MACs, and the switch doesn't care that the IP traffic isn't on the same subnet.

However, it is also possible that the machines on different subnets are seeing each other via the cable headend as well. Although your machines are assigned IPs from two different subnets, the headend router may have the two subnets aggregated (255.254.0.0 includes those two), so that the traffic ends up being broadcast over both subnets, resulting in the two machines seeing each other. This of course also indicates that everyone else on your cable headend is able to see traffic from your systems.

It may also be that Windows networking is seeing the two machines via the NetBIOS broadcasts, but is using the IP data to send and receive traffic between them, so they see each other as "local" machines, but send the traffic via the IP addresses, which results in the cable headend having to mediate.

A switch in this case may result in the machines not being able to see each other on your network, or it may just avoid any broadcasting within your local network. But due to the broadcast traffic, they may still be able to see each other on the network. That wouldn't end up making it go any faster, since the traffic would still have to pass over the cable connection.

It'd probably be a good idea for you to put a router or other gateway in place. You're undoubtedly paying extra for the multiple IP addresses. Putting a single machine in place running Windows ICS or another gateway system, or an old, slow system running FreeSCO or another Linux router would allow you to use NAT to share the connection, block the cable network from getting broadcast traffic, and result in an "internal" network allowing you to transfer data at high speeds.
 

Garion

Platinum Member
Apr 23, 2001
2,331
7
81
You've got a couple of options here..


1: Install IPX or NetBEUI and use it as your primary file sharing protocol.

2: Try and add a 2nd IP address on each interface on the same subnet. Use the hosts & LMHosts files to deal with name resolution and put in all the 2nd IP's to make it work. Just don't put in a default gateway on the 2nd address on the NIC. Bad ju-ju.

3: Go out and buy a router.

#1 is cheapest, #3 is easiest and best, and #2 is just a pain, but would work.

- G
 

CZroe

Lifer
Jun 24, 2001
24,195
857
126
Originally posted by: Lord Evermore
Windows networking doesn't rely entirely on the IP addressing, so that may explain why the machines are able to see each other even though they're not on the same subnet. NetBIOS just uses broadcasts and assigns ID's for each machine based on the computer name. Since they're all on the same hub, they can see each other. If you put them on a switch, they may still see each other, because the switch has to broadcast the initial traffic in order to build the MAC address table for each port. The NetBIOS traffic will still be using the same MACs, and the switch doesn't care that the IP traffic isn't on the same subnet.

However, it is also possible that the machines on different subnets are seeing each other via the cable headend as well. Although your machines are assigned IPs from two different subnets, the headend router may have the two subnets aggregated (255.254.0.0 includes those two), so that the traffic ends up being broadcast over both subnets, resulting in the two machines seeing each other. This of course also indicates that everyone else on your cable headend is able to see traffic from your systems.

It may also be that Windows networking is seeing the two machines via the NetBIOS broadcasts, but is using the IP data to send and receive traffic between them, so they see each other as "local" machines, but send the traffic via the IP addresses, which results in the cable headend having to mediate.

A switch in this case may result in the machines not being able to see each other on your network, or it may just avoid any broadcasting within your local network. But due to the broadcast traffic, they may still be able to see each other on the network. That wouldn't end up making it go any faster, since the traffic would still have to pass over the cable connection.

It'd probably be a good idea for you to put a router or other gateway in place. You're undoubtedly paying extra for the multiple IP addresses. Putting a single machine in place running Windows ICS or another gateway system, or an old, slow system running FreeSCO or another Linux router would allow you to use NAT to share the connection, block the cable network from getting broadcast traffic, and result in an "internal" network allowing you to transfer data at high speeds.

Actually, my ISP is misconfigured and has allowed multiple IP addresses through a simple hub for as long as they've even had a two-way cable modem service (I started out with their 1-way service in '99). I've run multiple systems and all have been able to obtain IP addresses and browse the 'net just fine.

As a family of gamers & filesharers, we wish to take advantage of this and avoid NAT/ICS or firewalls at all costs. All of these methods interfere enormously. I have seen no router that leases multiple IP addresses and allows for multiple DMZ PCs. :(

Also, I have heard that many cable companies cap bandwidth per IP address, and that buying a second IP address and using bandwidth aggregation software will essentially double your bandwidth. (I'll try to dig up my link)

However, they are using pretty dated equipment from an era that was probably before they capped speeds. My cable co will soon be upgrading to support Docsis modems... I'm sure they'll fix the configuration error and I will then have to use my router.

Most of my systems are on the same subnet if I release and renew at once. Perhaps I'll have to live with that :)
Sometimes, I must use UNC with IP addresses to access a share, and sometimes not so perhaps they don't show up to eachother when not on the same subnet.

BTW, if I use a TCP/IP app, like FTP, and the network uses TCP/IP & NetBEUI, can it host over the Internet via TCP/IP and locally using NetBEUI at full 100mbps at the same time? Or will all traffic go over the Internet because FTP is part of the IP suite? :(
 

Lord Evermore

Diamond Member
Oct 10, 1999
9,558
0
76
Yeah, you can't use FTP over anything but IP. But, if you install NetBEUI, which doesn't use IP, each system will be seeing each other system locally, and will transfer the data using NetBEUI rather than IP, so you can just use Windows Networking then.

Most likely you will lose all your perks when they switch to DOCSIS modems. :) But, you can hope that they just take a very long time to replace everyone's modem. :) When AT&T did ours, they didn't replace modems unless they had to come out for a service call.

I've never noticed a problem gaming with a router in place, at least not anymore. When home networking was still an uncommon thing, games didn't function because the servers didn't like multiple connections from one IP, but I think Civ3 Play the World is the only game I've heard of recently that has an issue with NAT. Performance has always been perfectly good for us, until recently, which we think is the cable company causing us problems.
 

CZroe

Lifer
Jun 24, 2001
24,195
857
126
Originally posted by: Garion
You've got a couple of options here..


1: Install IPX or NetBEUI and use it as your primary file sharing protocol.

2: Try and add a 2nd IP address on each interface on the same subnet. Use the hosts & LMHosts files to deal with name resolution and put in all the 2nd IP's to make it work. Just don't put in a default gateway on the 2nd address on the NIC. Bad ju-ju.

3: Go out and buy a router.

#1 is cheapest, #3 is easiest and best, and #2 is just a pain, but would work.

- G

Number 2 is what interests me, if not just to learn how. Thanks for bringing these to my attention!

I own a router, but I value my "real" IP addresses. ie, my brother and I will sometimes use a matchmaking service to connect eachother's PCs to play a multiplayer game which normally requires a manually entered IP address. This is impossible behind a router or using NAT as both clients will be trying to connect to the same IP! It is for this reason that NetBEUI isn't adequate either. Besides, when we are not doing that we are either playing seperate games, hosting FTP servers, transfering files over messaging/IRC services or using filesharing apps, none of which are NAT/Firewall friendly or NetBEUI-related.

I've tried in vain to figure out how to get a single network adapter to lease more than one IP address. Where can I start reading up?

I hope to one day set up a VPN server that can hand out an IP address to me when I connect from another Internet connection for trouble-shooting purposes. My friend's cable co uses NAT on all customers, and we've seen many applications that do not work without paying extra for them to deliver an IP via VPN (Which is what I hope to do).

When I connect to XP Pro's built-in VPN server, I can no longer browse the web on either the client or server machine thanks to XP's "security." I hope I don't need some dedicated machine just to get around this "feature."

Thnx!
 

Garion

Platinum Member
Apr 23, 2001
2,331
7
81
If you use DHCP, you can only have one IP address per adaptor. if you use static IP's, you can add as many IP's as you want. A "feature" of Windows in general.

- G
 

CZroe

Lifer
Jun 24, 2001
24,195
857
126
Originally posted by: Lord Evermore
Yeah, you can't use FTP over anything but IP. But, if you install NetBEUI, which doesn't use IP, each system will be seeing each other system locally, and will transfer the data using NetBEUI rather than IP, so you can just use Windows Networking then.

Most likely you will lose all your perks when they switch to DOCSIS modems. :) But, you can hope that they just take a very long time to replace everyone's modem. :) When AT&T did ours, they didn't replace modems unless they had to come out for a service call.

I've never noticed a problem gaming with a router in place, at least not anymore. When home networking was still an uncommon thing, games didn't function because the servers didn't like multiple connections from one IP, but I think Civ3 Play the World is the only game I've heard of recently that has an issue with NAT. Performance has always been perfectly good for us, until recently, which we think is the cable company causing us problems.
Are you gaming with multiple machines at once? :)

The major problem is the required ports and such. You can't put each machine in the DMZ without multiple IP addresses! :)

I've seen lists of all ports that need to be opened/forwarded for most popular games, and it looks like you might as well undo 'em all! Many games require huge or even multiple ranges consisting of thousands of ports. It's an admin's nightmare... Especially when you have no interest in securing the network or anything.

Also, take ZSNES, the netplay-enabled SNES game emulator + ZBATTLE, the matchmaking frontend that passes the IP address of the server/client to ZSNES when launching via the commandline. ZBATTLE obviously will take your external IP address and hand it off to the client. It wouldn't make much sense using a non-routable one would it? :) So what happens then, when two players from behind the same router using NAT connect? Then ZBATTLE thinks they both have the same IP address, and sure enough the game doesn't work. Even if one player is playing someone else, and you host a second game and a different client tries to join your machine's game, it can't. That's because the other game is still running using the same IP address and there is no way to tell your server apart from his. :(

Obviously, with some cable ISPs doing this, MS had a problem with the XBOX Live service (Which REQUIRES broadband). I read something about how MS got around this limitation (It's not uncommon for two broadband users to both have XBOX), but I don't remember how and it's something that today's games certainly do not utilize.
 

Lord Evermore

Diamond Member
Oct 10, 1999
9,558
0
76
Actually, we've been gaming behind a router for 3 or 4 years now with multiple machines, at 3 different locations, with two different routers, and never had any problems. :) Ports only need to be opened for incoming connections, which is only needed if you're running a server, or if the game server requires independent establishment of a session back to your machine, which any good game programmer wouldn't do since it would alienate a large subset of users. A DMZ isn't needed at all for most games, since no ports need incoming access.

HOSTING a game does indeed require that you have certain ports forwarded, or a DMZ enabled for one machine. But that's not what we do, since hosting on a cable connection is pointless. And only older games or badly programmed games require an incoming connection rather than responses to an established connection, or won't work with two computers from the same IP address.

Once the initial connection is made from a machine, on the standard port, the game server assigns a random port from whatever pool it's programmed for, and both the server and client machine start communicating over that port. Then a second machine does the same thing, so the standard port is only used once. This is also how web browsing works, whether you have NAT in the way or not, otherwise port 80 would always be busy on every web server.

Only within the past few weeks have we started having problems, which coincided with Comcast finishing their takeover of the AT&T network. I have a big thread here describing what the problems have been.
 

CZroe

Lifer
Jun 24, 2001
24,195
857
126
Heh, I'm old-school. When I say "games," I don't mean "8+ player server-oriented" games :)

I mean, a buddy and I want to play Typing of the Dead 2, or Episode1 Racer, Street Fighter Alpha or any number of one-on-one games. I can't think of any one-on-one games that utilize dedicated servers! Also, why would I want to connect to a dedicated server in Quake3 Arena to play against my friends when my friends and I are on the same local service? It makes more sense to dial eachother up directly for nearly lag-free gameplay :)

You're thinking about a very limited subset of games that MUST work through routers and such because they are designed for multiple nationwide players. I'm thinking about making EVERYTHING work.

And think about MPlayer, Heat, MS Zone, Gamespy etc. These (When they existed) have had one player operate as the host with nearly every modern game. I can't tell you the headaches I've been through with all those services because my friend or another random player was behind NAT. Troubleshooting EVERY TIME you want to play is not fun. ie, it takes about an hour's worth of steps through ZBATTLE/ZSNES to get to the point where you finally realize that you must both uncheck "Allow UDP" and connect manually without ZBATTLE just because one player is behind a router using NAT. Unchecking that severly affects performance and gets both players out of sync frequently.

It was only the advent of in-game server browsers with hosts of dedicated servers that saved Internet gaming and these are ONLY for the current popular games. Imagine when today's popular games are unpopular, and the only server in the list is in Korea and your ISP uses NAT and a firewall preventing you from hosting anything yourself even though you PAID for a real Internet connection which you intended to use (Run-on).

Not good.
 

Lord Evermore

Diamond Member
Oct 10, 1999
9,558
0
76
Yes, but any game that currently works through a server browser uses specific ports, which you can easily open through the NAT connection without a DMZ. And you can also specify what ports to use, so that even multiple machines can host on a network without running into port conflicts. Any game that doesn't allow you to modify settings to account for different network setups is simply badly done, or very old. I wouldn't expect a 5 year old game to work perfectly with newer networking setups that weren't common when they were written.
 

Panlion

Member
Feb 8, 2000
32
0
0
An easy way to solve your problem is to make their subnet mast 255.224.0.0. There is one problem with that, there will be certain ip on the internet that you cannot get to.. actually 30 class b or less.