Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 7 Apr 2002 12:23:35 +0200
From:      heikki soerum <heikkis@student.matnat.uio.no>
To:        freebsd-questions@FreeBSD.ORG
Subject:   Re: natd and online games
Message-ID:  <20020407122335.2c979650.heikkis@login.ifi.uio.no>
In-Reply-To: <Pine.BSF.4.21.0204061906590.14115-100000@cody.jharris.com>
References:  <5.1.0.14.2.20020407030009.00b37208@mail.online.no> <Pine.BSF.4.21.0204061906590.14115-100000@cody.jharris.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 6 Apr 2002 19:08:21 -0600 (CST)
Nick Rogness <nick@rogness.net> wrote:
> On Sun, 7 Apr 2002, Kjell Rune [iso-8859-1] Glærum wrote:
> 
> > At 14:05 06.04.2002 -0600, you wrote:
> > >On Sat, 6 Apr 2002, Kjell Rune [iso-8859-1] Glærum wrote:
> > >
> > > > If I'm using natd to share my internet connection, how can I get
> > > > online games like counter strike, quake 3 arena and other games
> > > > to work through it?
> > I'm not hosting game servers behind the nat machine, I only need to
> > be able to play games on other peoples servers...
> 	Then straight nat should work fine.  You can read about how to
> 	set this up from documents on the web.  No special configuration
> 	is needed.
I think he's refering to the problem with UDP traffic that several
 gameservers use.

If I've understod nat and natd correct, it has to create a ruleset that
 translates ip traffic from machine a(Nat'ed IP) through machine b(gateway)
 to machine c(game server) and visa versa whenever an IP package is sendt.
Its usually not any problem with TCP since machine a almost allways
 initiates the TCP connection when speaking to a game server.

(Anyone please enlighten me, I'm a bit murky/amateurish on the details at
 the moment.)

But when we come to UDP, there is no way that machine a can *initiate*
and "prepare" natd to forward recieved UDP traffic to machine a because 
the UDP connection is unidirectional.

And then when machine c sends UDP packages, the (apparent) destination is
 machine b, and machine b's natd wont have any ruleset that knows wheither
 the UDP traffic should be recieved by machine b(the gateway) *or* machine
 a.
It can be crudly solved by creating a port forwarding.. until the day a
nettwork has *more* than one computer with NAT'ed IP's.
Then the port forwarding ruleset wil only work with one NAT'ed computer 
at a time.

Is there a way to get natd (or another NAT daemon) to forward UDP
to *several* machines on the inside of a NAT'ed interface correctly?

In a world where more and more people live behind firewalls and NAT
daemons, And more often than not are *forced* by ISP's to live behind them.
The "simplest" solution would be that the gameservers supported TCP only
clients. Viva La revolutione, Death to UDP on gameservers! ;)

PS. Any technical information og representation is my own opinion, and
 might be completely wrong since I'm skirting the boundaries om my
 knowledge.

Heikki S.

-- 
IXian probe/3D
"Emphasizing a lifestyle based on consumption is the ultimate 
violence against poor countries." -Motoko Kusanagi in GITS
email: h e i k k i s @ifi.uio.no <-- remove spaces 
--

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020407122335.2c979650.heikkis>