[vox-tech] 2-nics question

Jeff Newmiller vox-tech@lists.lugod.org
Sat, 13 Dec 2003 01:21:38 -0800 (PST)


On Fri, 12 Dec 2003, Dave Margolis wrote:

> I want to put an ancient laptop to use as a wireless bridge.  My Gamecube
> sits in a room that I can't get ethernet to without a lot of effort.
> I could buy the Linksys _gaming adapter_ or any of several similar devices,
> but I figured this would be worthwhile experiment and I can save some
> cash.
> 
> Here is what I have:
> 
> P-I 100 / 40MB ram / 2GB HD -  Toshiba Laptop
> Slackware 9.1 slim install < 200MB for base install and some networking
> 
> 1 wired pcmica nic (dhcp server to the gamecube, and perhaps other
> devices if I get a hub or switch) - eth1
> 1 wireless pcmcia nic (dhcp client to my wireless router) - eth0
> 
> 
> I just installed the OS and everything is working.  The wireless nic is
> talking to the router and the outside world.  I configured the wired card
> as 192.168.1.1 (my _normal_ home network is 192.168.0.0).

This is not a bridge.  That is not to say you should be bridging, but
bridging implies extension of a single network across media.

The problem with wireless bridging is that it exposes your internal
network to any passers-by.  With routing, firewalling is much more
straightforward.

> Here is where I don't know what to do next.  I've got DHCP installed, but
> I've never configured it before.  Assuming I can get DHCP working through
> that nic, what software do I need or what configuration is required to
> _pass_ the internet through this machine.  I know I'm showing my
> networking ignorance here, but I've always used a hardware router...

Hmm.  I will leave it to you to read HOWTOs and Google for details on
these topics, but...

a) "pump" or "dhcpcd" to request dhcp leases from the wireless router.  I
use Debian, which uses the "ifupdown" package to manage interface
configuration, so I don't know what you will be using in Slackware.

b) The wireless router hands out private IP addresses, and "stands in" for
any of your machines that want to access the internet using the single
public IP address your ISP provides to you... this is called masquerading 
or network address translation (NAT).

c) The laptop can be configured to plain route or to do NAT.  Since
regular routing requires that you add a special routing entry to the
wireless router ("send stuff headed for 192.168.1.0/24 to 192.168.0.10"
where .10 is your laptop wireless address), and that option may not be
provided to you, so you may be required to NAT on the laptop so the
wireless router doesn't need to know 192.168.1.0/24 exists.

d) NAT on the laptop may be a good thing anyway, since that goes
hand-in-hand with firewalling, and wireless networks are hardly secure.

e) There is a kernel parameter that can be adjusted in your startup
scripts on the laptop to enable routing.  This is commonly a part of
normal firewall scripts anyway, but it is good to know the setting has to
be changed by something.  I use the "shorewall" firewall scripts these
days. 

f) Note that pre-defined firewalls like Shorewall often have an option
(possibly a default option) to block routing of private addresses across
the firewall... in your case, you would NOT want to block private
addresses.

g) You can use static network configuration on the ethernet segment at
first, for simplicity.

h) The trickiest part in the end may be threading external tcp/udp
connection requests back to your Gamecube... many games assume they can
open a port and accept requests from your gaming compatriots.  You ought
to be able to interact with the internet to some degree from the Gamecube
before you begin to worry about this step, but it is likely to come up
eventually.  You have to know which ports you want to open up (probably
game specific), and if possible configure the laptop wireless card with a
static ip address so you can tell the wireless router where to redirect
those connection requests (at your laptop).  Then the (NATing) laptop has
to do the same thing to point the connections back to the GameCube.

> For this part, I'm sure I can
> RTFM, but if anybody can give me a quick 1,2,3 or point me in the direction
> of good reading material, that would be great.

Can't offer a cookbook for raw configuration, since I tend to use
available scripts to configure things.  The key thing to know when
Googling is what you are trying to accomplish, though.

> The part I'm really unclear on is this:  do I need a crossover cable to
> talk to the Gamecube (or whatever dhcp client)?  If I plug a hub into the
> wired nic, does that require a crossover cable, or a regular one?

if no hub, crossover between network cards.  If hub, two straight-through
cables.  Actually, some switches these days will automatically figure out
whether you are using crossover or straight-through cables.  If you use
100BaseT or better, be sure to use good quality cables to avoid hair
pulling.

> I haven't bought the gamecube network adapter yet, and I wasn't planning
> on doing so until I proved this would work (I can always test with another
> laptop).

Absolutely.

---------------------------------------------------------------------------
Jeff Newmiller                        The     .....       .....  Go Live...
DCN:<jdnewmil@dcn.davis.ca.us>        Basics: ##.#.       ##.#.  Live Go...
                                      Live:   OO#.. Dead: OO#..  Playing
Research Engineer (Solar/Batteries            O.O#.       #.O#.  with
/Software/Embedded Controllers)               .OO#.       .OO#.  rocks...2k
---------------------------------------------------------------------------