AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Tcp Verbindungs Problem

Ein Thema von CreativeMD · begonnen am 30. Apr 2012 · letzter Beitrag vom 8. Jun 2012
Antwort Antwort
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#1

AW: Tcp Verbindungs Problem

  Alt 30. Apr 2012, 23:41
Es gibt einige Methoden, um automatisiert Ports beim Router freizuschalten. UPnP werfe ich jetzt einfach mal als Stichwort in den Raum. Das ist allerdings nicht umbedingt trivial und wird auch nicht von allen Routern unterstützt. Von der Fritz!Box her kenne ich die Funktionalität, allerdings muss man auch dort vorher das automatisierte Port Forwarding per UPnP aktivieren. Dies geht wiederrum nur über das Webpanel des Routers.
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#2

AW: Tcp Verbindungs Problem

  Alt 1. Mai 2012, 00:14
Auch darf er die Firewall, ob die Zusätzliche oder Windows eigene oder die des Routers vergessen. Wenn der Router einen Port nicht offen hat, kommt auch nichts an.

Man sollte hier drauf hinweisen, dass sogar Computer Erfahrene ihre Probleme haben eine Verbindung zwischen zwei Computern herzustellen, denn es gibt, wie oben erwähnt, einige Hürden. So bin ich nicht selten am VNC verzweifelt, wenn der Kollege auf der anderen Seite seine Probleme hatte. Es mußte sehr viel Konfiguriert werden und es lag nicht immer am VNC. Und das ist ein Profiprogramm. Zuletzt habe ich auf VNC komplett verzichtet.

Das Programm TeamViewer erledigt das Problem mit einem Trick. Es ist der gleiche Trick den übrigens auch die Browser nutzen, denn egal welche Firewall man auch hat, anscheinend durchbrechen die Browser jede Firewall.

Der Trick von TeamViewer und auch von den Browsern ist, dass sie zuerst "raus senden". Damit machen sie den Weg frei. Auch der TeamViewer verbindet sich erst mit einem Server, das ist sein Trick. Deshalb muß für TeamViewer nichts am Router eingestellt werden.

Und das wird dein Problem sein CreativeMD. Selbst wenn du es schaffst ein Chatprogramm so zu schreiben, dass es klappt, dann muß der gegenüber erst seine Firewall und Router Konfigurieren. ICQ & Co. umgehen das alles bekanntlich mit dem Trick.
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.679 Beiträge
 
Delphi 2007 Enterprise
 
#3

AW: Tcp Verbindungs Problem

  Alt 1. Mai 2012, 02:39
http://en.wikipedia.org/wiki/Hole_punching, macht auch Skype so. Allerdings zählt das nicht zum guten Ton, und soll wohl auch Sicherheitsrisiken bergen, weswegen die entsprechenden Programme gerne mal in Firmen gebannt werden.

So ein Chat sollte über einen Server im Internet realisiert werden. Also so einen, den man sich im Normalfall mietet, mit statischer IP. Das ist auch der übliche Weg.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
Benutzerbild von CreativeMD
CreativeMD

Registriert seit: 11. Okt 2011
127 Beiträge
 
Delphi XE2 Architect
 
#4

AW: Tcp Verbindungs Problem

  Alt 1. Mai 2012, 12:02
Zitat:
Und das wird dein Problem sein CreativeMD. Selbst wenn du es schaffst ein Chatprogramm so zu schreiben, dass es klappt, dann muß der gegenüber erst seine Firewall und Router Konfigurieren. ICQ & Co. umgehen das alles bekanntlich mit dem Trick.
Also die Firewall von Windows 7 sollte nicht mehr das Problem sein.

Kann man nicht vom Programm aus was am Router Konfigurieren?

Ich will nicht, dass das Chatprogramm über irgendein Server läuft.
Bei Skype zum Beispiel kann man nur mit 50Kb/s.
Es muss eine direkte Verbindung entstehne.

Z.B der Minecraft Server schafft es doch auch (Oder bin ich jetzt vollkommen blöd)
  Mit Zitat antworten Zitat
Benutzerbild von sx2008
sx2008

Registriert seit: 15. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#5

AW: Tcp Verbindungs Problem

  Alt 1. Mai 2012, 13:59
Z.B der Minecraft Server schafft es doch auch (Oder bin ich jetzt vollkommen blöd)
Ne, du bist nur ungeduldig und gehst unsystematisch vor.

Du willst also aus dem Internet durch deinen Router auf einen TCP/IP-Server auf deinem Rechner zugreifen?
Dann wäre es doch logisch zuerst mal kleine Brötchen zu backen und ein garantiert funktionsfähiges Programm (Apache Webserver) in Betrieb zu nehmen.
1.) Apache Webserver lokal installieren und testen
2.) in der Routerkonfiguration (NAT) einstellen, dass alles was von drausen auf Port 81 reinkommt auf deinen Rechner Port 80 weitergeleitet wird
3.) ermittle deine externe IP-Adresse (z.B. über http://www.ip-adress.com/IP_adresse/ )
4.) greife auf deinen Webserver über diese IP zu

Das wäre sozusagen deine Gesellenprüfung.
Erst jetzt macht es Sinn das Gelernte auf dein Chatprogramm zu übertragen.

Der nächste Schritt wäre dann die Routerkonfiguration per Software anstatt von Hand vorzunehmen.
Die meisten Router unterstützen UPnP und können so konfigueriert werden.
http://www.codeproject.com/Articles/...wardings-and-N

Es gibt noch eine weitere Methode: NAT Port Mapping Protocol

Beide Varianten sind aber so komplex, dass man wohl Jahre an Programmier- und Netzwerkerfahrung benötigt um sie in eine Anwendung einzubauen.
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#6

AW: Tcp Verbindungs Problem

  Alt 1. Mai 2012, 14:03
Kann man nicht vom Programm aus was am Router Konfigurieren?
Wie schon erwähnt. Per UPnP ist das prinzipiell möglich. Allerdings wird diese Möglichkeit nicht von allen Routern unterstützt und muss bei praktisch allen Modellen erstmal über das Webpanel zugelassen / aktiviert werden. Willst du die Aktivierung auch aus deinem Programm heraus vornehmen, müsstest du dir das Webpanel für alle Routertypen anschauen und selbst, wenn du da alles korrekt implementiert hast, stößt dein Programm ganz schnell an seine Grenze, wenn irgendein User mal ein Kennwort fürs Webpanel eingestellt hat.

der Minecraft Server schafft es doch auch (Oder bin ich jetzt vollkommen blöd)
Der Minecraft Server beinhaltet keinerlei Firewall Bypassing bzw. Port Forwarding Methoden. Auch hier musst du auf Serverseite ganz normal alle Ports im Router und in der Firewall freigeben.
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#7

AW: Tcp Verbindungs Problem

  Alt 1. Mai 2012, 16:46
Zitat:
Kann man nicht vom Programm aus was am Router Konfigurieren?
Alle Router werden von außen konfiguriert, aber jeder anders, bzw. mit eigener Software. Ich hab das Gefühl du willst mit irgendwelchen Tricks alle Hürden umgehen, also z. B. alle Firewalls abschalten, alle Router manipulieren, nur um irgendwie gerade so mal eine Verbindung herzustellen. Und wenn du das hinkriegst, sagst du - ich bin großer Programmierer, ich habe ein Chat über das Internet zwischen zwei Computern hergestellt. Nur bevor du alle Firewalls abschaltest nur um dein kleines Progrämmchen zum laufen zu kriegen, bedenke, dass du ohne Firewall mit einem nicht optimal gepflegtem System, innerhalb einer Minute aus dem Internet angegriffen und übernommen wirst.

Die Idee mit dem Webserver ist nicht schlecht, wäre eine Möglichkeit. Nur im das Gefühl zu kriegen würde ich dir das Tool "HFS - HTTP File Server" empfehlen. Für Austausch von Daten perfekt, leicht zu bedienen und kaum Einstellungen. Das ist ein kleiner, eine Art Web-Server, aber nur für Daten. Zu bedienen ist es leicht, das einzige Problem wird sein alle Hürden aus dem Internet richtig zu konfigurieren. Wenn du das hin gekriegt hast, wird ein Apache zwar mehr Arbeit bedeuten, aber auch mächtiger sein. Aber zuerst würde ich zum Testen den HFS - HTTP File Server versuchen. Dann wirst du mit einem funktionierendem Programm sehen was am System konfiguriert werden muß und was dein Programm können muß.

Hier noch etwas Lesestoff: http://www.brynosaurus.com/pub/net/p2pnat/
  Mit Zitat antworten Zitat
Benutzerbild von CreativeMD
CreativeMD

Registriert seit: 11. Okt 2011
127 Beiträge
 
Delphi XE2 Architect
 
#8

AW: Tcp Verbindungs Problem

  Alt 3. Mai 2012, 14:39
ok

nachdem ihr mir alle gesagt wie es nicht geht
und ich nicht weiß wie ich es sonst machen sollte
würde ich vorschlagen wir reden einmal über ein Beispiel.
TeamSpeak 3 ist mein parade Beispiel.
Wie haben die es den gelöst?
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:40 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz