Sie sind nicht angemeldet.

  • »Patafix« ist männlich
  • »Patafix« ist der Autor dieses Themas

Beiträge: 334

Wohnort: Nähe Kiel

Ingame-Name: Pata

Clan: Kosmos

Renommeemodifikator: 12

Danksagungen: 34

  • Nachricht senden

1

Montag, 30. Dezember 2013, 03:53

Verbindungsprobleme lösen und Verbindungen verbessern

Hallo liebe Community,

immer wieder klagen unschuldige Mitspieler über unvollständige Serverlisten... Dies soll sich ab heute ändern !

Nun, was ihr dafür braucht ?

- Grundlegende Computerkenntnisse (sind nie verkehrt)
- Zugang zu den Port-Freigaben bzw. Weiterleitungen in eurem Router
- Gegebenenfalls Adminrechte, Task-Manage, Konsole
- Ein paar Minuten deiner Zeit


Wie soll das gehen ? Ich habe doch schon alles Mögliche versucht ... Wirst du mir vielleicht entgegnen :D

Die Antwort darauf ist relativ einfach und hat mit der eingebauten Firewall im Router zu tun. Diese blockt teilweise Pakete zu einigen Ports, weshalb z.B. Server-Informationen den Client nicht erreichen können.
(Möglicherweise blockiert die Firewall von Windows bereits die Pakete -> Programm über die Windows-Firewall kommunizieren lassen )

Wie können wir diese Blockade denn nun lösen ?

Indem wir die entsprechenden Ports im Router freigeben.
Teeworlds nutzt jedoch standardmäßig eine dynamische Portzuweisung, weshalb man gleich alle Ports freigeben müsste. Jedoch wird so die Schutz-Funktion schnell zunichte gemacht ...
Aber wer hätte gedacht, das Teeworlds bereits eine simple Config-Variable besitzt, die genau unseren Zweck eines festen Ports erfüllt ?

Die dafür notwendige Variable heißt "bindaddr" und bindet den lokalen Socket an die übergebene Adresse.
In den meisten Fällen ist die Variable nicht gesetzt, weshalb sich TW einfach einen freien Port zuweisen lässt.

Um nun den lokalen Port festzulegen, gehst du in deinen Roaming/Teeworlds-Ordner und editierst deine settings.cfg oder deine Parameter, mit denen du Teeworlds aufrufst.
(Ich empfehle letzteres, da Teeworlds die Variable NICHT wieder speichert, so dass sie beim "ordentlichen" Quit aus der settings.cfg verschwindet)

Teeworlds mit Parametern aufrufen


Das ganze kansnt du z.B. über eine Batch-Datei lösen, oder du erstellst eine Verküpfung, gehst dort auf Eigenschaften und fügst hinter Ziel ein Leerzeichen und

Quellcode

1
"bindaddr "localhost:PORT""
ein.
So sieht die gesamte Zeile in Ziel bei mir so aus:

Quellcode

1
D:\Windows\Users\Paddy\Desktop\teeworlds-0.6.2-win32\teeworlds.exe "bindaddr "localhost:1234""


Um eine Batch-Datei zu bekommen, erstellen wir z.B. eine Text-Datei (.txt) und ändern die Endung in .bat (Falls die Endungen nicht angezeigt werden: ALT->Extras->Ordneroptionen->Ansicht->"Bekannte Dateierweiterungen ausblenden" -> Haken weg )

Dort fügen wir folgenden Code ein:
(Natürlich mit deiner Port-Nummer)

Quellcode

1
2
3
4
5
@echo off

start "" "teeworlds.exe" "bindaddr "localhost:PORT""

exit


Dann die Datei noch im gleichen Order wie die Teeworlds.exe speichern.
Nun hast du beim Ausführen der Batch-Datei den Parameter immer mit dabei ;)
zum Lesen den Text mit der Maus markieren

Das ganze ist eine ganze Adresse als Text (-> "" ), weshalb wir localhost als Adresse des eigenen PCs einfügen.
Die Port-Nummer kommt ohne weitere Leerzeichen, durch einen Doppelpunkt getrennt dahinter.
Zu beachten ist, dass der Port aus 2 Byte (16 Bits) besteht, weshalb seine Möglichkeiten auf 2^16 = 65536 begrenzt sind.
Zudem sind bestimmte Ports standardisiert, weshalb man lieber andere Ports wählen sollte.
Ich empfehle die Wahl des Portes nach dieser Liste, da so die Wahrscheinlichkeit sinkt, einen Port zu erwischen, der bereits benutzt wird.
HINWEIS: Die Ports in der Liste sind möglicherweise bereits vergeben und sollten vermieden werden !
Da die Zählung bei 0 anfängt ist der höchste mögliche Port 65535.

Quellcode

1
bindaddr "localhost:PORT"


z.B:

Quellcode

1
bindaddr "localhost:54321"


(Speichern nicht vergessen ;)
Falls jedoch die Bindung an den spezifischen Port scheitert, dann sucht sich TW wie gewohnt einen freien Port, oder spuckt eine Fehlermeldung aus.

Um nun zu überprüfen, ob Teeworlds sich an den richtigen Port gebunden hat nutzen wir den Task-Manager und unsere Konsole in Verbindung mit "netstat.exe", das uns die aktuellen Verbindungen anzeigt.

Dafür müssen wir als erstes Teeworlds starten.

Im Taskmanager finden wir die Process-ID:

Um sie anzuzeigen, oben auf Ansicht->Spalten auswählen.



Und dann einen Haken bei PID setzen:



Nun wissen wir, welche ID unser Prozess hat und können ihn eindeutig zuordnen.

Im nächsten Schritt öffnen wir die Konsole (Ausführen->cmd) und geben ein: "netstat -a -n -o"

Dies sollte uns eine Übersicht der TCP und UDP Verbindungen in die Konsole drucken.

Etwas weiter unten (bei den UDP-Sockets) sollte sich nun auch unser Teeworlds-Prozess befinden.
Hier ein kleiner Ausschnitt:

Auf der rechten Seite bzw. in der rechten Spalte sind die PIDs zu sehen, während links die gebundenen Adressen zu finden sind.
Wie gewohnt steht der Port hinter den Doppelpunkten, der in diesem Beispiel gerade 65535 ist, was meinem zuvor eingestellten Port entspricht.
Falls die Port-Nummer nun von deiner übergebenen abweicht, ist es sehr wahrscheinlich, dass der Port gerade anderwaltig benutzt wird. Suche dir einfach einen neuen aus und probiere es nochmal.


Jetzt haben wir den ersten Schritt gemeistert, wir haben einen festen Port !

Der folgende Schritt ist weniger komplex, jedoch von Router zu Router unterschiedlich.

In meinem Fall handelt es sich um eine schöne Fritz!Box, jedoch sollte das ganze auf anderen Routern analog funktionieren.

Meldet euch in der Benutzeroberfläche des Routers an und geht zu den Port-Freigaben oder Weiterleitungen.

Dort erstellst du zwei neue Weiterleitungen. Eine mit dem Protokoll UDP für die Pakete der Serverinformation und eine mit dem Protokoll TCP für die Verbindung mit dem Server.
sowohl Eingangs- als auch als Ziel-Port deinen gewählten Port festlegen.

Als Ziel-Computer musst du entweder deine lokale Netzwerk-IP (kannst du über ipconfig herausfinden) angeben oder deinen Computer aus einer Liste wählen.

Beispielkonfiguration für UDP (TCP analog, lediglich Protkoll->TCP auswählen):




Nur noch auf "OK" / "Übernehmen" klicken und eigentlich sollte es das auch schon gewesen sein.

Da ich keine Probleme mit der Serverkommunikation hatte, konnte ich meine Lösung nicht testen und bitte um Rückmeldung.

Eventuell kann eine Port-Freigabe auch die Verbindung allgemein verbessern ;) (Wie gesagt, Rückmeldungen wären schön ).

Somit wünsche ich nur noch eine Gute Nacht.

Mit freundlichen Grüßen,

Pata

Achso: Für die Nutzer anderer Systeme ist dieser Vorgang ähnlich.

PS: Wer mal neugierig ist, der kann in der Port-Liste nach dem Teeworlds-Server suchen :P

Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von »Patafix« (22. Juni 2014, 00:47) aus folgendem Grund: Update


  • »BotoX« ist männlich

Beiträge: 647

Wohnort: ( ͡° ͜ʖ ͡°)

Beruf: ( ͡° ͜ʖ ͡°)

Ingame-Name: ( ͡° ͜ʖ ͡°)

Renommeemodifikator: 13

Danksagungen: 36

  • Nachricht senden

2

Montag, 30. Dezember 2013, 08:24



Yo, sollte gehen.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »BotoX« (30. Dezember 2013, 08:24)


.Shura

pro-poster tee

(3 075)

Beiträge: 390

Renommeemodifikator: 12

Danksagungen: 108

  • Nachricht senden

3

Montag, 30. Dezember 2013, 14:32

geil danke patafix!!


ich habe noch ne frage: als port wähle ich doch am besten einen, der in der liste der stand. ports beides mal grün bzw. ja hat oder?

und mit den parametern meinst du doch die console in tw welche man über f1 aufruft?

speichern der eingabe von bindaddr nur mittels enter? Und dann nochmal per strg+shift+q quitten?

lg

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von ».Shura« (30. Dezember 2013, 14:31)


  • »Deepfinder« ist weiblich

Beiträge: 604

Wohnort: ▬▬▬▬▬▬▬▬▬▬▬▬▬▬ ♥ bei Jimjam ♥ ▬▬▬▬▬▬▬▬▬▬▬▬▬▬

Beruf: ▬▬▬▬▬▬▬▬▬▬▬▬▬▬ ♥ Jimjam's Freund ♥ ▬▬▬▬▬▬▬▬▬▬▬▬▬▬

Renommeemodifikator: 11

  • Nachricht senden

4

Montag, 30. Dezember 2013, 14:34

Um nun den lokalen Port festzulegen, gehst du in deinen Roaming/Teeworlds-Ordner und editierst deine settings.cfg oder deine Parameter, mit denen du Teeworlds aufrufst.
(Ich empfehle letzteres, da Teeworlds die Variable NICHT wieder speichert, so dass sie beim "ordentlichen" Quit aus der settings.cfg verschwindet)


Wie genau ändere ich denn meine Parameter, mit denen ich Teeworlds aufrufe ?




Racoon

active tee

(4 841)

  • »Racoon« ist männlich

Beiträge: 259

Ingame-Name: Racoon

Clan: BloodZ & Rinjū

Renommeemodifikator: 10

  • Nachricht senden

5

Montag, 30. Dezember 2013, 14:43

geil, ich finde jedenfalls mehr server! danke patafix!
wissenswert wäre jetzt noch wieviel server es denn insgesamt gibt zurzeit, kann das mal bitte jemand schreiben? ( natürlich sollte das jemand machen der zu 100% alle server findet :P )



ansonsten dürfte das ja so passen bei der portöffnung oder?

.Shura

pro-poster tee

(3 075)

Beiträge: 390

Renommeemodifikator: 12

Danksagungen: 108

  • Nachricht senden

6

Montag, 30. Dezember 2013, 14:50

da musste q23p anschreiben huehue

  • »Patafix« ist männlich
  • »Patafix« ist der Autor dieses Themas

Beiträge: 334

Wohnort: Nähe Kiel

Ingame-Name: Pata

Clan: Kosmos

Renommeemodifikator: 12

Danksagungen: 34

  • Nachricht senden

7

Montag, 30. Dezember 2013, 15:19

geil danke patafix!!


ich habe noch ne frage: als port wähle ich doch am besten einen, der in der liste der stand. ports beides mal grün bzw. ja hat oder?

und mit den parametern meinst du doch die console in tw welche man über f1 aufruft?

speichern der eingabe von bindaddr nur mittels enter? Und dann nochmal per strg+shift+q quitten?

lg


Die Ports aus der Liste sind möglicherweise bereits vergeben, weshalb ich dazu rate, andere Ports zu nehmen.

Wie du die Parameter anwendest findest du entweder weiter unten, oder im Startpost ;)

Die Variable bindaddr muss in den settings.cfg geändert, oder als Parameter übergeben werden.

Bei der ersten Variante solltest du wirklich mit "STRG+SHIFT+Q" quitten; eleganter ist zweiteres :)






Teeworlds mit Parametern aufrufen:

Das ganze kansnt du z.B. über eine Batch-Datei lösen, oder du erstellst eine Verküpfung, gehst dort auf Eigenschaften und fügst hinter Ziel ein Leerzeichen und

Quellcode

1
"bindaddr "localhost:PORT""
ein.
So sieht die gesamte Zeile in Ziel bei mir so aus:

Quellcode

1
D:\Windows\Users\Paddy\Desktop\teeworlds-0.6.2-win32\teeworlds.exe "bindaddr "localhost:1234""


Um eine Batch-Datei zu bekommen, erstellen wir z.B. eine Text-Datei (.txt) und ändern die Endung in .bat (Falls die Endungen nicht angezeigt werden: ALT->Extras->Ordneroptionen->Ansicht->"Bekannte Dateierweiterungen ausblenden" -> Haken weg )

Dort fügen wir folgenden Code ein:
(Natürlich mit deiner Port-Nummer)

Quellcode

1
2
3
4
5
@echo off

start "" "teeworlds.exe" "bindaddr "localhost:PORT""

exit


Dann die Datei noch im gleichen Order wie die Teeworlds.exe speichern.
Nun hast du beim Ausführen der Batch-Datei den Parameter immer mit dabei ;)

Gruß Pata

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Patafix« (30. Dezember 2013, 15:19)


Malek

cookie-cutter tee

(1 872)

  • »Malek« ist männlich

Beiträge: 161

Wohnort: Österreich

Renommeemodifikator: 10

  • Nachricht senden

8

Montag, 30. Dezember 2013, 16:15

[...]
wissenswert wäre jetzt noch wieviel server es denn insgesamt gibt zurzeit, kann das mal bitte jemand schreiben? ( natürlich sollte das jemand machen der zu 100% alle server findet :P )
[...]
~1200 (liste: http://pastebin.com/vFFscxR2 [fehlen aber ~200])

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Malek« (30. Dezember 2013, 16:15)


.Shura

pro-poster tee

(3 075)

Beiträge: 390

Renommeemodifikator: 12

Danksagungen: 108

  • Nachricht senden

9

Montag, 30. Dezember 2013, 17:09

Rückmeldung: ich finde jetzt 90% der Server, nicht wie zuvor 20% :)

Der Hammer :D

das ganze noch im teeworlds.com forum wäre jetzt mein vorschlag :p

€: teeworlds.com selbstverständlich. ;D

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von ».Shura« (30. Dezember 2013, 19:49)


  • »Patafix« ist männlich
  • »Patafix« ist der Autor dieses Themas

Beiträge: 334

Wohnort: Nähe Kiel

Ingame-Name: Pata

Clan: Kosmos

Renommeemodifikator: 12

Danksagungen: 34

  • Nachricht senden

10

Montag, 30. Dezember 2013, 17:15

ich werde das wohl heute Abend machen.

Da ich mir aber noch nicht sicher war, ob das tatsächlich funktioniert, habe ich es erst ein mal gelassen :)

.Shura

pro-poster tee

(3 075)

Beiträge: 390

Renommeemodifikator: 12

Danksagungen: 108

  • Nachricht senden

11

Montag, 30. Dezember 2013, 20:01

ok, mittlerweile funktioniert das nicht mehr :d

mit der normalen teeworlds.exe finde nur ein paar server samt namen, der rest sind alles ip's.

mit der teeworlds.bat finde ich keine server :x




und


(nicht nur bei 'favoriten')

  • »Deepfinder« ist weiblich

Beiträge: 604

Wohnort: ▬▬▬▬▬▬▬▬▬▬▬▬▬▬ ♥ bei Jimjam ♥ ▬▬▬▬▬▬▬▬▬▬▬▬▬▬

Beruf: ▬▬▬▬▬▬▬▬▬▬▬▬▬▬ ♥ Jimjam's Freund ♥ ▬▬▬▬▬▬▬▬▬▬▬▬▬▬

Renommeemodifikator: 11

  • Nachricht senden

12

Montag, 30. Dezember 2013, 20:28

mit der normalen teeworlds.exe finde nur ein paar server samt namen, der rest sind alles ip's.

Das ist auch nicht die normale teeworlds.exe.




  • »Patafix« ist männlich
  • »Patafix« ist der Autor dieses Themas

Beiträge: 334

Wohnort: Nähe Kiel

Ingame-Name: Pata

Clan: Kosmos

Renommeemodifikator: 12

Danksagungen: 34

  • Nachricht senden

13

Montag, 30. Dezember 2013, 21:06

Wahrscheinlich ist dein Port geblockt worden ;) Nimm einen anderen und versuche es nochmal :)

Ansonsten helfe ich dir persönlich :P

flippy

gepflegte Faulheit

(6 126)

Beiträge: 518

Ingame-Name: // flippy

Clan: ÐøÐ

Renommeemodifikator: 12

Danksagungen: 43

  • Nachricht senden

14

Montag, 30. Dezember 2013, 21:10

Hab auch n Problem, nehmen wir n Hotelzimmer?


BTW. Hab insgeheim n ähnliches Problem, seit dem Kabelde auf IPv6 umgestellt hat..
[mg]http://img.picshare.at/1448316351_Blood_for_Mercy.png[/img]

kaolo



  • »BotoX« ist männlich

Beiträge: 647

Wohnort: ( ͡° ͜ʖ ͡°)

Beruf: ( ͡° ͜ʖ ͡°)

Ingame-Name: ( ͡° ͜ʖ ͡°)

Renommeemodifikator: 13

Danksagungen: 36

  • Nachricht senden

15

Montag, 30. Dezember 2013, 22:44

teeworlds "bindaddr 0.0.0.0:35000" funktioniert leider nicht.
Ich empfehle im teeworlds config Ordner eine autoexec.cfg erstellen mit folgendem Inhalt:
bindaddr [::]:35000
oder
bindaddr 0.0.0.0:35000
fallse ersteres nicht funktioniert.

Also ya, bindaddr als Paramter funzt bei mir nicht.

EpicTheFaiLLorD

cookie-cutter tee

(780)

  • »EpicTheFaiLLorD« ist männlich

Beiträge: 122

Wohnort: Österreich

Ingame-Name: EpicFaiL

Clan: [...(-.-)...]

Renommeemodifikator: 9

Danksagungen: 1

  • Nachricht senden

16

Freitag, 28. Februar 2014, 20:44

hoi, ich finde halt auch kaum server und es lädt ca. 5min bis es die die gehn ma findet, jetz hab ich das ma alles gemacht mit der .bat datei usw und jetz lese ich grad das es garnich geht bei botox :>
naja aufjednfall passt der port der dann bei dem cmd teil steht überein aböör was is meine lokale ip adresse? xD kann ja nur die ipv4-adresse sein oder? die Verbindungslokale ipv6 adresse nimmt mein a1modem dings nich an wenn ich die da eingebe.

plz help, giff servers volvo

  • »Patafix« ist männlich
  • »Patafix« ist der Autor dieses Themas

Beiträge: 334

Wohnort: Nähe Kiel

Ingame-Name: Pata

Clan: Kosmos

Renommeemodifikator: 12

Danksagungen: 34

  • Nachricht senden

17

Samstag, 1. März 2014, 12:48

Hey,

ich gehe davon aus, dass du den letzten Schritt mit der Port-Weiterleitung im Router meinst.

Leider kenne ich mich mit deinem Router nicht aus.

Jedoch habe ich eine mögliche Anleitung gefunden: https://cdn3.a1.net/final/de/media/pdf/B…ADB_AV4202N.pdf

Auf Seite 38 befindet sich die Anleitung zur Port-Weiterleitung.

(Für deine lokale Adresse würde ich einfach mal in der Übersicht der verbundenen Geräte schauen, dort werden die Adressen meistens angezeigt :)

Gruß Pata

EpicTheFaiLLorD

cookie-cutter tee

(780)

  • »EpicTheFaiLLorD« ist männlich

Beiträge: 122

Wohnort: Österreich

Ingame-Name: EpicFaiL

Clan: [...(-.-)...]

Renommeemodifikator: 9

Danksagungen: 1

  • Nachricht senden

18

Samstag, 1. März 2014, 15:57

super danke, also hab die tw.bat da mitm port 5913 gemacht, bei der portweiterleitung auch 5913 UDP mit lokaler ip und im cmd steht auch 5913 wenn ich da nachkucke mit dem netstat ano aber iwie dauerts trzdem über 5min bis ich ma alle srv geladn habe, müsste das jetz nich eig extrem schnell gehn bzw normal halt oder?

und mir is noch aufgefalln das da immer dasteht failed to load autoexec.cfg odaso ka vlt hat das damit was zu tun? :>

danke für die schnelle antwort pata :>

мσηѕтα

cookie-cutter tee

  • »мσηѕтα« ist männlich

Beiträge: 38

Ingame-Name: мσηѕтα

Renommeemodifikator: 5

  • Nachricht senden

19

Samstag, 1. März 2014, 22:30

und mir is noch aufgefalln das da immer dasteht failed to load autoexec.cfg odaso ka vlt hat das damit was zu tun? :>
Nää die autoexec is die datei die der Client beim start lädt so wie beim Tw server was die macht weiß ich allerdings auch nich ^^

  • »Patafix« ist männlich
  • »Patafix« ist der Autor dieses Themas

Beiträge: 334

Wohnort: Nähe Kiel

Ingame-Name: Pata

Clan: Kosmos

Renommeemodifikator: 12

Danksagungen: 34

  • Nachricht senden

20

Sonntag, 2. März 2014, 13:11

@EpicTheFaiLLorD: Du musst zusätzlich noch br_max_request erhöhen, da er sonst nur wenige server auf einmal sucht.

Alternativ kannst du meinen Better Refresh Client nehmen. Den findest du hier auch im Forum :)

Ähnliche Themen