It sounds like this is just at home though, so it seems like it may be ok (I
may be wrong though).
Date: 1999/01/04
All DHCP does is allow your gateway machine (firewall) to adapt to a
dynamically assigned (by your ISP) IP address. If you're running a
server at work (which is behind the firewall), you have to make sure
that there are specific ip forwarding rules setup which allows the server
to pass UDP packets through on the correct ports. Once that is done, you
may have to add this line to the CORE.INI file:
[Communications]
alternate_ip_addr_lookup=1
For a list of specific IP/packet forwarding rules, go here:
http://members.home.net/jms1/gplmultiplayer.html
Caveat - this allows me to host races on my side of the firewall, but I
cannot join races. Also, if you're not the sysadmin (or are good buds
with him/her) for your employer's network, you'll probably play hell
getting that individual to change/implement the necessary NAT/masq rules
that are required.
% Because my ADSL proxy will not route ip packets into my box unless I
% have requested them, I cannot host GPL sessions. To get around this I
% was planning to write an IP packet server that would send out a request
% to people who plan to join my races and pass the "real" request into GPL
% when it arrives. Then the server would either bow out, or continue to
% act as a GPL ip proxy server acting between the GPL host and the client
% out there in the real world beyond the ADSL proxy.
% I have never done any TCP/IP or socket programming before although I am
% a competant programmer. What I need to know is:
% 1) Is this idea a runner? I can join sessions on VROC because the client
% does all the requesting and the IP packets can then arrive.
% 2) How does GPL receive packets - especially the first one? What is the
% protocol for this.
% 3) Where on the net can I get hold of a reasonable, light starter guide
% to programming TCP/IP and sockets. I want to make this as simple as
% possible. If it works I will of course make it public to all of you
% stuck behind a firewall (and anyone else, of course).
% Please, please, please help - we have 20-30 racers in a UK GPL league
% and need to get up and running as soon as possible.
% If you are reading this, Randy Cassidy, please let me know whether I am
% wasting my time.
% Cheers,
% Paul
--
**************************** Michael E. Carver *************************
Upside out, or inside down...False alarm the only game in town.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=<[ /./. [- < ]>=-=-=-=-=-=-=-=-=-=-=-=-=-=
I've reworked the port selection, and the initial handshaking between a
GPL client and server for the upcoming GPL 1.1 patch. So, yes, you
would probably be wasting your time writing routing software to get GPL
1.0 to work. I haven't tried 1.1 with the setup you've described, so I
can't guarantee that there won't still be some work to do, but I think
you'll be OK (see below).
I have tried the GPL 1.1 patch using a Linux firewall, and it works
just fine as both a client and a server. You use a combination of IP
masquerading, and IP autoforwarding, with the following three rules:
ipfwadm -F -a accept -m -S a.a.a.a/m.m.m.m -D 0.0.0.0/0
ipautofw -A -r udp 6970 6971 -h a.a.a.a -v -u
ipautofw -A -r udp 32766 32786 -h a.a.a.a -v -u
where a.a.a.a is private IP address (e.g. 192.168.0.1) of the machine
behind the firewall, and m.m.m.m is the netmask. If you run as a
server, the clients would connect to the firewall's address. If you
run as a client, the "-m" in the ipfwadm rule invokes IP masquerading,
which pipes data between the server and your (behind the firewall)
machine. Given the hoops I had to jump through to get IP masquerading
to work, I suspect it will work OK with your setup too.
Randy
can't wait for the patch. :-)
-Lindsay
>I've reworked the port selection, and the initial handshaking between a
>GPL client and server for the upcoming GPL 1.1 patch. So, yes, you
>would probably be wasting your time writing routing software to get GPL
>1.0 to work. I haven't tried 1.1 with the setup you've described, so I
>can't guarantee that there won't still be some work to do, but I think
>you'll be OK (see below).
>I have tried the GPL 1.1 patch using a Linux firewall, and it works
>just fine as both a client and a server. You use a combination of IP
>masquerading, and IP autoforwarding, with the following three rules:
>ipfwadm -F -a accept -m -S a.a.a.a/m.m.m.m -D 0.0.0.0/0
>ipautofw -A -r udp 6970 6971 -h a.a.a.a -v -u
>ipautofw -A -r udp 32766 32786 -h a.a.a.a -v -u
>where a.a.a.a is private IP address (e.g. 192.168.0.1) of the machine
>behind the firewall, and m.m.m.m is the netmask. If you run as a
>server, the clients would connect to the firewall's address. If you
>run as a client, the "-m" in the ipfwadm rule invokes IP masquerading,
>which pipes data between the server and your (behind the firewall)
>machine. Given the hoops I had to jump through to get IP masquerading
>to work, I suspect it will work OK with your setup too.
>Randy
> can't wait for the patch. :-)
> -Lindsay
> >> Because my ADSL proxy will not route ip packets into my box unless I
> >> have requested them, I cannot host GPL sessions. To get around this I
> >> was planning to write an IP packet server that would send out a
> >request
> >> to people who plan to join my races and pass the "real" request into
> >GPL
> >> when it arrives.
> >...
> >> If you are reading this, Randy Cassidy, please let me know whether I
> >am
> >> wasting my time.
> >> Cheers,
> >> Paul
> >I've reworked the port selection, and the initial handshaking between a
> >GPL client and server for the upcoming GPL 1.1 patch. So, yes, you
> >would probably be wasting your time writing routing software to get GPL
> >1.0 to work. I haven't tried 1.1 with the setup you've described, so I
> >can't guarantee that there won't still be some work to do, but I think
> >you'll be OK (see below).
> >I have tried the GPL 1.1 patch using a Linux firewall, and it works
> >just fine as both a client and a server. You use a combination of IP
> >masquerading, and IP autoforwarding, with the following three rules:
> >ipfwadm -F -a accept -m -S a.a.a.a/m.m.m.m -D 0.0.0.0/0
> >ipautofw -A -r udp 6970 6971 -h a.a.a.a -v -u
> >ipautofw -A -r udp 32766 32786 -h a.a.a.a -v -u
> >where a.a.a.a is private IP address (e.g. 192.168.0.1) of the machine
> >behind the firewall, and m.m.m.m is the netmask. If you run as a
> >server, the clients would connect to the firewall's address. If you
> >run as a client, the "-m" in the ipfwadm rule invokes IP masquerading,
> >which pipes data between the server and your (behind the firewall)
> >machine. Given the hoops I had to jump through to get IP masquerading
> >to work, I suspect it will work OK with your setup too.
> >Randy