NOVINKA - Online rekvalifikační kurz Java programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!
Avatar
lukas.sei
Člen
Avatar
lukas.sei:1.7.2016 6:22

Dobrý den,
Mám takový problém. Vytvářím si serverovou aplikaci (TCPListener) a k ní se chci připojit z klienta (TCPClient).
Když mám obě dvě věci spuštěné na stejném PC vše se připojí bez problémů. Ale když dám server na jeden PC a klienta na druhý PC (ve stejné síti), připojení se nezdaří.

Můžete mi s tímto někdo pomoct ?
Můj kód:

//Nastavení TCPLIsteneru v servru
TcpListener serverListener;
serverListener = new TcpListener(IPAddress.Any, 6666);
serverListener.Start();

//Nastavení TCPClient v klientu:
TcpClient tcpClient = new TcpClient();
tcpClient.Connect(IPAddress.Parse("127.0.0.1"), 6666);

PS: Když dám v klientu místo adresy "127.0.0.1" svojí adresu (získanou z whatismyip.com), tak se klient nepřipojí, ani když je na stejném PC jako server.

 
Odpovědět
1.7.2016 6:22
Avatar
Marian Benčat:1.7.2016 8:07

Nemůžeš dát místo loopbacku svoji ip adresu u whatsmyip.To je tvoje public ip a ty jsi pravděpodobně za NAT em, takže tvojí public ip má dalších 150 lidí.. Musíš tam zadat ip tvojeho počítači v tvojí domácí podsiti.. Musíš tedy napsat na tom počítači, kde je server win+r -> cmd-> ipconfig /all a tam zjistíš ip adresu.. Bude pravděpodobně ve stylu 192.168... Tak to většinou spravci nastavuji

Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
Nahoru Odpovědět
1.7.2016 8:07
Totalitní admini..
Avatar
lukas.sei
Člen
Avatar
Odpovídá na Marian Benčat
lukas.sei:1.7.2016 10:09

Dobrá, takhle tedy vyřeším připojení z druhého PC na stejné síti. Ale co kdybych se chtěl připojit z PC na jiné síti ?

V nastavení routeru mám otevřený potřebný port.

Editováno 1.7.2016 10:10
 
Nahoru Odpovědět
1.7.2016 10:09
Avatar
Marian Benčat:1.7.2016 12:21

To zalezi jak moc jsi v "jiné síti". Pokud máš kontrolu na všech "skocích" - APčkách, routerech, atp. Tak to není problém a můžeš třeba určitý port "locknout" pro tvoje konkrétní PC.. jaksi mu udělat cestu.. pokud ale plánuješ, že ty budeš mít server a k němu se má připojovat kamarád, tak budeš potřebovat veřejnou IP adresu.

Případně nějakou VPNku,.. pro domácí použití třeba služby typu Hamachi.

Nahoru Odpovědět
1.7.2016 12:21
Totalitní admini..
Avatar
lukas.sei
Člen
Avatar
Odpovídá na Marian Benčat
lukas.sei:1.7.2016 12:32

Přesně tak jsem to myslel, že bych měl server na jednom PC a někdo jiný z druhého konce republiky (v tvojem komentáři "kamarád") se na něj mohl připojit.
Veřejnou IP bych měl mít, protože už jsem takhle hostoval bez hamachi TS3 server, na což (si myslím) je taky potřebná veřejná IP.. Jediné co tehdy stačilo bylo v Routeru nastavit port forwarding pro port, který ts3 využívá.
Dále už se všichni mohli připojit pomocí IP:Port, kde IP byla moje IP získána z whatismyip a port byl ten, který používá TS3 (9987).

 
Nahoru Odpovědět
1.7.2016 12:32
Avatar
Odpovídá na Marian Benčat
Neaktivní uživatel:1.7.2016 13:07

Já jsem třeba nikdy moc nepochopil, co lidi myslí tou "veřejnou IP". Podle mě je snad každá IP na globálním internetu veřejná... Osobně třeba nemám problém s připojením ostatních na můj PC přes moji veřejnou dynamickou IP, s tím, že teda musím otevřít porty.

Nahoru Odpovědět
1.7.2016 13:07
Neaktivní uživatelský účet
Avatar
Odpovídá na lukas.sei
Marian Benčat:1.7.2016 13:31

V tom případě to samé bude fungovat pro tvůj server, ale musíš nastavit ten port forwarding

Nahoru Odpovědět
1.7.2016 13:31
Totalitní admini..
Avatar
Odpovídá na Neaktivní uživatel
Marian Benčat:1.7.2016 13:35

Veřejná ip , tak jak ji nejčastěji potkáváss v textu, znamená to, že ukazuje přímo k tobě,.. Na nějaké zařízení, které ty máš pod kontrolou a je jedno jestli je to konkrétní počítač, nebo třeba tvůj domácí router. Jde o to že ta veřejná ip přímo určuje ,,tebe" a ne třeba anténu na kostele, nebo nějaké zařízení u tvého ii internet providera.. Každá ip je tedy svým způsobem veřejná, záleží ale z pohledu ,, jakého subnetu ". Tvoje ip je taky veřejná vždy, ale třeba jen z pohledu tvojí domácí sítě. Běžně když se ale mluví o public ip, tak se tím myslí z . Pohledu ,, vnějšího světa"

Nahoru Odpovědět
1.7.2016 13:35
Totalitní admini..
Avatar
Odpovídá na Marian Benčat
Neaktivní uživatel:1.7.2016 18:54

Tak já to beru tak, že většina lidí má IP co ukazuje na zařízení pod jejich kontrolou...

Nahoru Odpovědět
1.7.2016 18:54
Neaktivní uživatelský účet
Avatar
Marian Benčat:1.7.2016 19:02

No,.. Záleží na poskytovateli.. Třeba upc dává tuším všem svým zákazníkům public ip,.. Ale je dynamická, takže se občas může měnit..

Nahoru Odpovědět
1.7.2016 19:02
Totalitní admini..
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 10.