TestseT Geschrieben 12. September 2003 Teilen Geschrieben 12. September 2003 leute, leute ich versteh eins nicht. irgendwo habe ich da einen großen denkfehler, glaub ich zumindest. thema: portfowarding. vorsicht: ich versuche im folgenden router mit nat-funktionalität und firewall zu trennen. ausgangspunkt: clientseitig heutzutage haben ja viele spieler zu hause ein kleines lan, adressiert mit privaten ip-adressen, aus dem sie dann über einen router mit nat-funktionalität (meist hardwarerouter) ins internet gehen, um da dann da zu zocken. die nat-funktion des routers hat doch jetzt die aufgabe, bei den paketen die aus dem lan ins internet wollen, die privaten ip-adressen mit der öffentlichen ip-adresse des routers auszutauschen. rauszus die quell- und reinzus die zieladresse. das hat ja alles noch nichts mit ports zu tun, gelle? somit müsste ja ein router, der dieses masquerading betreibt, die pakete sauber durchlassen, so dass ein spieler ohne weitere portforwarding-regeln an einem spiel im internet teilnehmen kann (solange er nicht hostet). das wirkliche portforwarding kommt doch jetzt erst wirklich zum einsatz, wenn eine firewall dazwischen geschalten wird, und zwar auch nur dann, wenn sie pessimistisch konfiguriert worden ist, also grundsätzlich alle ports ersteinmal dicht hält. erstelle ich nun filterregeln, die speziell diese ip-pakete durchlassen, die vom spiel aus kommen (erkennbar an den portnummern), habe ich doch portforwarding betrieben. ergo hat portforwarding doch grundsätzlich was mit filterregeln zu tun und nicht mit masquerading, sprich nat. alles clientseitig betrachtet. dass es bei verbindungen von außen komplizierter ist, weiß ich, wollt ich aber jetzt nicht betrachten. ist doch bis jetzt so richtig, oder? mein problem ist jetzt folgendes: bei dem spiel nascar 2003 von Papyrus wird laut readme-datei gesagt: clientseitige spieler, die hinter einem router/firewall stecken, müssen portforwarding betreiben. dazu sind die udp-ports 32766-32809 zu forwarden. mehr nicht! ich habe hier zu hause mein lan mit einem suse8.0-router samt pessimistisch konfigurierter firewall und nat-funktion abgesichert. das system ist standalone. anhand der loggfiles habe ich festellen müssen, dass das spiel auch tcp-ports für den lobby-betrieb benötigt. nach und nach schaltete ich die geforderten tcp-ports frei und irgendwann konnte ich problemlos spielen. andere spieler, die nur einen hardware-router betreiben und sich mit der materie nicht so gut auskennen, forwarden laut readme nur die udp-ports und scheinen damit klar zu kommen. keiner in der gesamten spielecommunity hat was zu den tcp-ports ins community-forum geschrieben. sind die hardwarerouter denn standardgemäß im tcp-bereich sperrangelweit offen?? wenn ja warum ist der udp-bereich dann zu und muss extra "geforwardet" werden? auch kapiere ich nicht, wieso dazu nichts genaueres in der readme-datei steht. der hersteller des spiels, Papyrus, ist eigentlich bekannt dafür, seine spiele immer sehr gut zu dokumentieren. daher drängt es sich mir auf, einen gewaltigen denkfehler bei der ganzen sache zu haben. hoffentlich kann mich mal einer aufklären ps: um das mal abzuklären, das spiel läuft ja hinter meinem router-firewall-system. es geht mir aber um die sache selbst, um das thema! pps: hier mal der textausschnitt aus der readme zum thema "playing behind a router/firewall" MULTIPLAYER BEHIND A FIREWALL OR ROUTER By default the following UDP ports will be used by NASCAR® Racing 2003 Season: 32766 for the net_server_port, 32767 for ping port, and then sequentially numbered ports for each allowed client connection (max of 42) starting at 32768. To run from a machine with a private IP address behind a Linux firewall, you need to use a combination of IP masquerading and IP autoforwarding. The following rules for the default 42 client port range can be used: ipfwadm -F -a accept -m -S a.a.a.a/m.m.m.m -D 0.0.0.0/0 ipautofw -A -r udp 32766 32809 -h a.a.a.a -v -u Where a.a.a.a is the address of the machine behind the firewall, and m.m.m.m is the netmask. If you run a server behind the firewall, clients should connect to the IP address of the firewall. Note that users with Linksys or other such Internet connection sharing routers should not need to change any configuration settings to connect to NASCAR® Racing 2003 Season multiplayer races as clients. If you wish to host a NASCAR® Racing 2003 Season race from behind a router you will need to forward the default UDP port range of 32766-32809 from the router to the internal or LAN IP of the NASCAR® Racing 2003 Season server. Linksys users will need to latest firmware update to allow port ranges to the forwarded. When connecting, clients should use the external or WAN IP address of the router. If you have a router or firewall and would like to allow multiple users on your LAN to connect to the same multiplayer server, you will need to have each of the clients behind the router use a different net_server_port in their CORE.INI files (one client would make no changes and use the default port, while each of the others would need to specify a unique net_server_port). Additionally if you are hosting a server from behind the router by forwarding the default UDP port range to the LAN IP of the server, no clients on your LAN will be able to connect to multiplayer races since all of the incoming packets would be forwarded to your server. If you want to allow these clients to connect to races while your server is running, it would be necessary to forward and configure the server to use a non-standard UDP port range (see below for details). Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
dr.disk Geschrieben 12. September 2003 Teilen Geschrieben 12. September 2003 Eins vorneweg: Portforwarding ist ein 'schwammiger' Begriff. Wenn Du in Deiner Firewall einen Port durchläßt, dann ist das ganz normales Routing. Halt nur für diesen einen Port und nicht für alles was da vorbeikommt. Bei Deinem Spiel-Szenario gibt's aber ein anderes Problem. Dieses Spiel funktioniert nur dann im Internet, wenn das Programm direkt aus dem Internet erreichbar ist. Bei Dir hat aber die Firewall die öffentliche IP und nicht der PC auf dem das Spiel läuft. Aus dem Internet ist also nur die Firewall erreichbar. Hier greift jetzt das Portforwarding: die Daten von dem Spiel die bei der Firewall ankommen sollen auf deinen PC weitergeleitet werden. Dafür ist das Forwarding. Das ganze hat nur einen Hacken: dadurch das man in der Firwall den Rechner eintragen muß an den die Daten weitergeleitet werden kann man auf diese Art nur einen Rechner mit dem Internet verbinden. Ach übrigens: die Doku oben ist für einen 2.0 Kernel. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.