Autor Beitrag
byoean
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 26

Win XP Pro
Delphi 7, Delphi 2000, Visual Basic, PHP, JS, SQL etc.
BeitragVerfasst: Mo 29.01.07 15:34 
Guten Tag,
ist es möglich Daten unter PC´s auszutauschen, ohne einen zentralen Server zu benutzen? Bei Skype ist es doch der Fall, dass die Daten direkt zum Gesprächspartner gesendet werden. Einer der PC´s hat dann sicherlich einen Server lokal laufen. Aber wie kommt es das dieser Server dann hinter dem Router erreichbar ist?
Amiga-Fan
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 534



BeitragVerfasst: Mo 29.01.07 16:09 
hat skype nicht eine besondere technik, um die Firewall zu umgehen? In der c't gab es irgendwann einen Artikel dazu.

_________________
- Leg dich nie mit einem Berufsprogrammierer an
- Wahre Profis akzeptieren keine einfachen Lösungen
Narses
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Administrator
Beiträge: 10183
Erhaltene Danke: 1256

W10ent
TP3 .. D7pro .. D10.2CE
BeitragVerfasst: Mo 29.01.07 16:13 
Moin!

user profile iconbyoean hat folgendes geschrieben:
ist es möglich Daten unter PC´s auszutauschen, ohne einen zentralen Server zu benutzen?

Grundsätzlich: ja. ;) Ist aber manchmal nicht soo einfach... :zwinker:

user profile iconbyoean hat folgendes geschrieben:
Bei Skype ist es doch der Fall, dass die Daten direkt zum Gesprächspartner gesendet werden. Einer der PC´s hat dann sicherlich einen Server lokal laufen. Aber wie kommt es das dieser Server dann hinter dem Router erreichbar ist?

AFAIK macht Skype Suche in: Delphi-Forum, Delphi-Library UDP HOLE PUNCHING. Das klappt aber nur, weil die einen öffentlichen Webserver haben und es klappt bei manchen Routern/Configs der Router trotzdem nicht. :?

cu
Narses

_________________
There are 10 types of people - those who understand binary and those who don´t.
byoean Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 26

Win XP Pro
Delphi 7, Delphi 2000, Visual Basic, PHP, JS, SQL etc.
BeitragVerfasst: Di 30.01.07 09:06 
Ok, danke schonmal! Das mit diesem UDP hole punching scheint eine interessante Sache zu sein. Hier im Forum bin ich auch auf das Stichwort "STUN" de.wikipedia.org/wiki/STUN gestoßen. Ich würde sehr gerne mehr darüber erfahren, und mich interessiert es sehr, wie man soetwas z.b. mit Indy Komponenten realisieren kann. Habe ich es richtig verstanden, dass da wohl viel mehr hintersteckt, als nur für den Server den Port 80 zu benutzen?? Ist diese ganze Geschichte auch mit einem FTP Server realisierbar, oder begrenzt sich das auf ein Udp/Tcp Protokoll?
byoean Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 26

Win XP Pro
Delphi 7, Delphi 2000, Visual Basic, PHP, JS, SQL etc.
BeitragVerfasst: Do 01.02.07 12:10 
Titel: gegooglet
So,ich habe jetzt nocheinmal gegppgelt und folgendes gefunden

Zitat:

For Indy 8.0 and Indy 9.0



Both Indy 8.0 and Indy 9.0 do not support HTTP Tunneling proxies so you have to use Indy 10.



For Indy 10


1. Create an IOHandler such as TIdIOHandlerStack or SSL IOHandler and assign the TCPClient.IOHandler property this.
2. Create a TIdCustomTransparentProxy object and assign it to the IOHandler's TransparentProxy property.
3. Set the TIdCustomTransparentProxy properties as required.
4. If there is another proxy that the HTTP Tunneling Proxy itself needs to use, you have to use, set the Chained Proxy to a TIdCustomTransparentProxy such as TIdSocksInfo for a SOCKS Proxy or a TIdConnectThroughHttpProxy for another HTTP Tunneling Proxy.



For TIdFTP in Indy 10



You have to set the Passive property to true (PASV) to work with a HTTP Tunneling Proxy because standard FTP PORT transfers will not work in this configuration. You should allow the user to be able to choose between using PORT transfers (TIdFTP.Passive := False) and using PASV transfers (TIdFTP.Passive := True).


Kann mir dazu jemand noch mehr erklären. Bzw mir das mal erläutern. Hätte gerne noch ein wenig mehr Wissen darüber!

Vielen Dank! =)