Portál AbcLinuxu, 7. května 2025 05:52

Dotaz: Client-server aplikace - odesilani TCP paketu pres internet nefunguje spravne

12.10.2012 11:12 gld17 | skóre: 4 | blog: GLDiuv_blog
Client-server aplikace - odesilani TCP paketu pres internet nefunguje spravne
Přečteno: 697×
Odpovědět | Admin

Ahoj, udelal jsem si v jave takoveho jednoducheho TCP klienta a TCP server. Klient jen posila pakety na server a ten je zobrazuje, vse v konzoli.

 

1) kdyz pouziju ip moji vnitrni site, jdou mi pakety posilat na libivolny port a zprava kterou posilam se zobrazuje

2) kdyz odesilam pakety na ip adresu kterou mi pridelil internetovy provider (mam O2 adsl, dynamicky pridelovanou) a rozjedu server (samozrejme na odpovidajicim portu), vyhazuje mi netbeans hlasku "connection refused" na vsechny mozne porty ktere jsem zkousel (64350 a podobne co me napadly)

3) kdyz zkusim pouzit port napriklad 23, client komunikuje s mym telnetem (prijmam pozadavek "password:*****"), ale moje vlastni serverova aplikace nic neprijma :-/ kdyz zkusim port 80, Wireshark mi spravne ukaze odesilane pakety i s mym textem, nasledne okamzite prijmuti paketu z vnejsku z moji ip od providera, ale veskery text v prijmutem paketu vzdy chybi a to jak u portu 23 tak 80

 

Firewall mam ve winech uplne vypnuty.

 

1) proc nefungujou porty ktere zadavam i kdyx mi na nich nasloucha server?

2) proc kdyz odeslu paket s textem na port 80 nebo 23, prijmu ho bez textu?

3) blokuje li to O2 schvalne v ramci nejake bezpecnosti, proc muzou fungovat treba moje multiplayerove hry, ty prece maji taky svoje porty pres ktere komunikuji

 

Dekuji za pomoc


Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

rADOn avatar 12.10.2012 12:35 rADOn | skóre: 44 | blog: bloK | Praha
Rozbalit Rozbalit vše Re: Client-server aplikace - odesilani TCP paketu pres internet nefunguje spravne
Odpovědět | | Sbalit | Link | Blokovat | Admin
A opravdu nasloucha? Co rika netstat?
"2^24 comments ought to be enough for anyone" -- CmdrTaco
12.10.2012 13:09 gld17 | skóre: 4 | blog: GLDiuv_blog
Rozbalit Rozbalit vše Re: Client-server aplikace - odesilani TCP paketu pres internet nefunguje spravne
Ano i netstat ukazuje ze na portu se naslocha. Vzhledem k tomu ze na mem intranetu to funguje spravne soudim, ze v tom jak jsou napsane oba programy (jsou opravdu jednoduche neni na tom co zkazit) chyba neni.

Jeste bych mel rict, ze jsem za nasim routrem. Ale jak rikam, TCP paket poslany na muj port 80 pres internet mi dorazi zpatky, ale chybi v nem veskery text ktry jsem do neho vlozil. (zjistuju to vsechno pres wireshark - odchozi paket ten text ma, prichozi uz ne)
MMMMMMMMM avatar 12.10.2012 12:56 MMMMMMMMM | skóre: 44 | blog: unstable | Valašsko :-)
Rozbalit Rozbalit vše Re: Client-server aplikace - odesilani TCP paketu pres internet nefunguje spravne
Odpovědět | | Sbalit | Link | Blokovat | Admin
Co zkusit port otestovat? (btw vnitřní síť? takže máš router s NATem? co portforwarding? popravdě tvému popisu moc nerozumím:-))
Linux Dokumentační Projekt - PDF ke stažení
12.10.2012 13:14 gld17 | skóre: 4 | blog: GLDiuv_blog
Rozbalit Rozbalit vše Re: Client-server aplikace - odesilani TCP paketu pres internet nefunguje spravne
Aha myslim ze uz to chapu, to co delam nemuze fungovat, kdyz jsem za routrem, ze? Tzn. ze mam server spusteny az za routrem, z vnejsku se jevi ze nic nenaslocha (jak potvrdilo to skenovani portu). Jak si mam pak ale vysvetlit, ze mi ten TCP paket prijde zpatky do PC, ale bez textu?
12.10.2012 13:29 gld17 | skóre: 4 | blog: GLDiuv_blog
Rozbalit Rozbalit vše Re: Client-server aplikace - odesilani TCP paketu pres internet nefunguje spravne
Ok taze jsem v routru nastavil ze porty nad 65000 patri k mojemu PC, rozjel jsem na 65001 server, otestoval port tou webovou aplikaci a uz se na nem naslocha. Nicmene porad se na neho nemuzu pripojit pres internet tim mym tcp klientem :-/
12.10.2012 14:13 gld17 | skóre: 4 | blog: GLDiuv_blog
Rozbalit Rozbalit vše Re: Client-server aplikace - odesilani TCP paketu pres internet nefunguje spravne
Odpovědět | | Sbalit | Link | Blokovat | Admin
Zacinam si myslet, ze duvod, proc se nemuzu pripojit na svuj server pres internet je ten, ze nemam pevnou Ip adresu a ze u dynamickych mi provider blokuje nektere sluzby, mimojine ze se nemuzu pripojit na ledajaky port.
rADOn avatar 12.10.2012 14:28 rADOn | skóre: 44 | blog: bloK | Praha
Rozbalit Rozbalit vše Re: Client-server aplikace - odesilani TCP paketu pres internet nefunguje spravne
A neni ta tvoje "dynamicka" adresa nahodou z privatniho rozsahu? (prefix 10., 172. nebo 192.168.)
"2^24 comments ought to be enough for anyone" -- CmdrTaco
12.10.2012 14:38 gld17 | skóre: 4 | blog: GLDiuv_blog
Rozbalit Rozbalit vše Re: Client-server aplikace - odesilani TCP paketu pres internet nefunguje spravne
Moje ip co ted zrovna mam pridelenou je XXX.XXX.XXX.XXX.
rADOn avatar 12.10.2012 14:56 rADOn | skóre: 44 | blog: bloK | Praha
Rozbalit Rozbalit vše Re: Client-server aplikace - odesilani TCP paketu pres internet nefunguje spravne
Zvenku vypadas takhle:
xenon / # nmap XXX.XXX.XXX.XXX

Starting Nmap 5.51 ( http://nmap.org ) at 2012-10-12 14:49 CEST
Nmap scan report for XXX.XXX.broadband12.iol.cz (XXX.XXX.XXX.XXX)
Host is up (0.021s latency).
Not shown: 991 closed ports
PORT      STATE SERVICE
135/tcp   open  msrpc
139/tcp   open  netbios-ssn
445/tcp   open  microsoft-ds
8000/tcp  open  http-alt
49152/tcp open  unknown
49153/tcp open  unknown
49154/tcp open  unknown
49155/tcp open  unknown
49156/tcp open  unknown

Nmap done: 1 IP address (1 host up) scanned in 6.26 seconds
BTW nechci vypadat jako kverulant, ale za mych mladych wydlackych let takhle vystavovat nezafajrvolovanou masinu byla cira sebevrazda.
"2^24 comments ought to be enough for anyone" -- CmdrTaco
12.10.2012 15:02 gld17 | skóre: 4 | blog: GLDiuv_blog
Rozbalit Rozbalit vše Re: Client-server aplikace - odesilani TCP paketu pres internet nefunguje spravne
To fakt ted neresim, hlavne chci vyresit svuj problem, adresu budu mit po dalsim pripojeni zase jinou a firewall si zas zapnu ;)
12.10.2012 14:43 gld17 | skóre: 4 | blog: GLDiuv_blog
Rozbalit Rozbalit vše Re: Client-server aplikace - odesilani TCP paketu pres internet nefunguje spravne
Odpovědět | | Sbalit | Link | Blokovat | Admin
Jenom tak okrajove, kdyby mel nekdo zajem to se mnou prubnout, tak tu jenom pridavam kod toho mojeho klienta. Server mi naslocuha na 65010. Mozna ze kdyby mel dobrovolnik pevnou ip adresu od providera, mohli bysme vyzkouset, jestli je to ten kamen urazu :-) kdyztak moje icq: 164743334
public static void main(String[] args) {        
        Socket s;
        String host = "XXX.XXX.XXX.XXX";
        int port = 65010;
        try {
            s = new Socket(host, port);
            BufferedReader sis = new BufferedReader(new InputStreamReader(System.in));
            BufferedWriter os = new BufferedWriter(
                    new OutputStreamWriter(s.getOutputStream()));
            BufferedReader is = new BufferedReader(
                    new InputStreamReader(s.getInputStream()));
            String l;
            do {
                System.out.println("Type a line to send to server.");
                l = sis.readLine();
                os.write(l);
                os.newLine();
                os.flush();
                System.out.println("Server: " + is.readLine());
            } while (!l.equals("exit") && !l.equals("down"));
            s.close();
        } catch (Exception e) {
            System.out.println(e);
        }
    }

rADOn avatar 12.10.2012 15:06 rADOn | skóre: 44 | blog: bloK | Praha
Rozbalit Rozbalit vše Re: Client-server aplikace - odesilani TCP paketu pres internet nefunguje spravne
Mno nechci zase vypadat jako kverulant ale jestli se bindujes na IP tvyho routeru tak je div ze to funguje vubec nejak… Co je spatnyho na 0.0.0.0 ?
"2^24 comments ought to be enough for anyone" -- CmdrTaco
12.10.2012 15:08 gld17 | skóre: 4 | blog: GLDiuv_blog
Rozbalit Rozbalit vše Re: Client-server aplikace - odesilani TCP paketu pres internet nefunguje spravne
Ale ja uz jsem o prispevek rekl, ze jsem si uz nastavil NAT a momentlne mam na vsechny porty tunel na muj pc.
rADOn avatar 12.10.2012 15:56 rADOn | skóre: 44 | blog: bloK | Praha
Rozbalit Rozbalit vše Re: Client-server aplikace - odesilani TCP paketu pres internet nefunguje spravne
Sorry, ja myslel ze ten kod je serveru a ze se na tu IP binduje, javovskej ip stack zase tolik neznam. Na posilani streamu zadna megajavovina neni treba, staci starej dobrej netcat… a ten port je blokovanej.
"2^24 comments ought to be enough for anyone" -- CmdrTaco
12.10.2012 16:37 alkoholik | skóre: 40 | blog: Alkoholik
Rozbalit Rozbalit vše Re: Client-server aplikace - odesilani TCP paketu pres internet nefunguje spravne
Ma to samozrejme blbe. Bindovat musi na lokalni adresu, kam se NATuje.
Jinak tady ten dotaz vubec nema co delat. Javovy server na Windows..
12.10.2012 18:13 gld17 | skóre: 4 | blog: GLDiuv_blog
Rozbalit Rozbalit vše Re: Client-server aplikace - odesilani TCP paketu pres internet nefunguje spravne
Ale ja se zamerne binduju na moji adresu pridelenou providerem - to proto, ze v konecnem dusledku se chci pokusit komunikovat s jinym pc pres internet. Na lokalni adrese to samozrejme funguje. Ale to jsem tu vsechno zminil :-/
MMMMMMMMM avatar 12.10.2012 18:51 MMMMMMMMM | skóre: 44 | blog: unstable | Valašsko :-)
Rozbalit Rozbalit vše Re: Client-server aplikace - odesilani TCP paketu pres internet nefunguje spravne
Ale ta veřejná IP adresa od providera je přidělena teď routeru s NAT, ne? A tam je teď nastaven portforwarding na lokální IP adresu stroje, kde naslouchá ta aplikace. Takže pokud máš IP stroje s aplikací v LAN např. 192.168.1.10, aplikaci bych nastavil, ať naslouchá na své lokální IP 192.168.1.10 a port např. 61234, potom na routeru s NAT nastavit portforwarding portu 61234 právě na stanici 192.168.1.10 a stejný port. A pak otestovat portscanem na Internetu tu veřejnou IP a port 61234. To by mělo fungovat, jestli to správně chápu. Potom ostatní pc na Internetu, která se připojí na Tvou veřejnou IP adresu a port 61234, se dostanou právě na tu stanici v LAN.
12.10.2012 20:25 gld17 | skóre: 4 | blog: GLDiuv_blog
Rozbalit Rozbalit vše Re: Client-server aplikace - odesilani TCP paketu pres internet nefunguje spravne
Ano, presne takto jsem to delal a scanovani portscanerem skutecne ukaze, ze na danem portu se naslocuha - dukaz ze server bezi a ze jsem dobre nestavil portforwarding na routeru. Ale pak to same jako je ta webova sluzba na scanovani portu, chci udelat ja se svou vlastni aplikaci a z meho pc - a nemuzu se pripojit. To tady celou dobu resim.

Ted si ale myslim, ze chyba je v tom, ze nemam pevnou ip adresu. Napriklad u DC++ se taky nemuzes pripojit na nekoho jineho, kdyz alepson jeden z vas nema aktivni ip. A tu ja nemam.
rADOn avatar 15.10.2012 14:26 rADOn | skóre: 44 | blog: bloK | Praha
Rozbalit Rozbalit vše Re: Client-server aplikace - odesilani TCP paketu pres internet nefunguje spravne
Vznika nam tady nejakej bordel… v tom scanu co jsem daval vyse byly videt porty 139 a 445, ergo to urcite nebyl zadnej router. Navic si zrejme pletes dynamicky pridelovanou ip s privatnim rozsahem (kdyz si to nmapnu ted tak je tam uplne neco jinyho). Pokud tedy fasujes verejnou ip (coz ta vyse uvedena je) ale neni staticka, tak si zarid nejaky to dynDNS nebo jak se ty voloviny jmenujou (vetsina home routeru neco takovyho ma ve firmwaru).

A btw na "webovy sluzby na scanovani portu" se vybodni, pacz takova vec ma znacnou sanci byt zabanovana. Jestli si poradis s wiresharkem tak nmap je hracka :-)
"2^24 comments ought to be enough for anyone" -- CmdrTaco
16.10.2012 11:59 gld17 | skóre: 4 | blog: GLDiuv_blog
Rozbalit Rozbalit vše Re: Client-server aplikace - odesilani TCP paketu pres internet nefunguje spravne
Ten scvan uz davno nebude fungovat, uz to davno nebezi jestli jsi to zkousel.

Proste ted jenom zbantuju kamose, nastavime spolu jeho router, rozbehnu tam svoji serverouvou aplikaci nebo spustim wireshark a zkusim mu pres internet poslat pakety, jestli je prijme. Ja jsem uspesny nebyl, kdyz jsem je posilal sam na sebe.

Tu vec si myslim nepletu, dynamicke ip mi prideluje jak internet provider, tak muj router, ale vzhledem k tomu ze jsem na neho pripojeny sam, mam vzdycky 10.0.0.1 takze to neresim.
12.10.2012 20:26 gld17 | skóre: 4 | blog: GLDiuv_blog
Rozbalit Rozbalit vše Re: Client-server aplikace - odesilani TCP paketu pres internet nefunguje spravne
Ano je pridelena routru s NAT. Ano, presne takto jsem to delal a scanovani portscanerem skutecne ukaze, ze na danem portu se naslocuha - dukaz ze server bezi a ze jsem dobre nestavil portforwarding na routeru. Ale pak do principu to same jako je ta webova sluzba na scanovani portu, chci udelat ja se svou vlastni aplikaci a z meho pc - a nemuzu se pripojit. To tady celou dobu resim.

Ted si ale myslim, ze chyba je v tom, ze nemam pevnou ip adresu. Napriklad u DC++ se taky nemuzes pripojit na nekoho jineho, kdyz alepson jeden z vas nema aktivni ip. A tu ja nemam.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.