Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Komunikacija preko socket-a

[es] :: Java :: Komunikacija preko socket-a

[ Pregleda: 2880 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

krstak84
student

Član broj: 210622
Poruke: 64
*.air.tehnicom.net.



Profil

icon Komunikacija preko socket-a23.04.2009. u 05:16 - pre 182 meseci
Da li neko zna kako da uspostavim konekciju izmedju dva racunara na netu (znaci nije lokalna mreza), preko soketa a da racunari nemaju staticku IP adresu (recimo chat aplikacija)?

Znaci zanima me komunikacija dva racunara sa dinamickim IP adresama (chat aplikacija), i da li se to radi preko soketa ili ne?
 
Odgovor na temu

IDE

Član broj: 53403
Poruke: 586
95.155.15.*



Profil

icon Re: Komunikacija preko socket-a23.04.2009. u 08:53 - pre 182 meseci
Naravno da se radi upotrebom socket-a.

Pogledaj primjere sa Socket i ServerSocket klasama.

Takodje, prostudiraj i Observer pattern - moze ti pomoci prilikom kreiranja chat-a...

To je to, s tim da bi ti trebao jedan server ( racunar sa statickim IP-em ) na koji ce se ljudi kaciti i prijavljivati sa svojim IP-em ( opet na tvoju aplikaciju sa socketima )...

there's something out there
waiting for us,
and it ain't no man...
 
Odgovor na temu

krstak84
student

Član broj: 210622
Poruke: 64
*.air.tehnicom.net.



Profil

icon Re: Komunikacija preko socket-a23.04.2009. u 09:25 - pre 182 meseci
OK, znam ja da sve to moze, ali mene zanima da li moze da se uspostavi konekcija bez tog posrednika sa statickom IP adresom?

Znaci ja imam samo dva racunara sa dinamickim IP adresama i zelim da uspostavim kontakt, bez posrednika sa statickom IP adresom.

Da li je to moguce?
 
Odgovor na temu

gajo2
Budapest

Član broj: 62614
Poruke: 518
*.i-rose.si.

Sajt: b.flyingoranges.com


+117 Profil

icon Re: Komunikacija preko socket-a23.04.2009. u 09:59 - pre 182 meseci
Moguce je ako znas adresu servera. Staticka IP adresa znaci samo da je to uvek ista adresa i ne moras da menjas, a dinamicka znaci da se ona s vremena na vreme menja pa moras da uspostavis novu konekciju na novi IP.
 
Odgovor na temu

krstak84
student

Član broj: 210622
Poruke: 64
*.air.tehnicom.net.



Profil

icon Re: Komunikacija preko socket-a23.04.2009. u 10:51 - pre 182 meseci
Adresu servera(provajdera preko koga pristupam netu) nalazim preko sajta http://www.whatismyip.com/ i tamo nadjem tu adresu, a moja IP adresa je 192.168.1.102, e sad kako ja kad pozivam ServerSocket to da podesim?, recimo imam serversku stranu:

Code:

ServerSocket soc;
Socket s;
try {
    soc = new ServerSocket(5455);
    s = soc.accept();
} catch (Exception ex) {}


i klijensku :

Code:

Socket socket;
try {
socket = new Socket(address, 5455);
} catch (Exception ex) {}


Promenljiva address je IP adresa servera, ali sta ja tu da stavim ako znam koja je adresa mog racunara (192.168.1.102) i staticka adresa mog provajdera (xxx.xxx.xxx.xxx) koju dobijem sa sajta www.whatismyip.com?

Probao sam prvo jednu, pa drugu, ali nece, kapiram da moram nekako da ih ukombinujem. Treba prvo da pristupim provajderu preko njegove adrese, pa posle mom racunaru preko moje adrese, ali kako to da izvedem?
 
Odgovor na temu

gajo2
Budapest

Član broj: 62614
Poruke: 518
*.i-rose.si.

Sajt: b.flyingoranges.com


+117 Profil

icon Re: Komunikacija preko socket-a23.04.2009. u 11:18 - pre 182 meseci
Ovo bas i nema veze sa Javom pa bi bolje bilo da procitas nesto o mrezama...

Mislim da tvoja adresa nije 192.168.1.102 zato sto sve adrese koji pocinju sa 192.168.x.x su uglavnom lokalne mreze, npr. ako imas ruter onda ti ga ruter dodeli. Tu adresu vide samo lokalne masine. Tvoja prava adresa na Internetu je npr. 62.193.139.* (kao sto i pise na Elitesecurity-ju ispod imena).

Dakle, ako si ti server, onda napravis ServerSocket i bindujes se na neki port npr. 9876
Zatim, klijent masina se povezuje na tebe sa new Socket(62.193.139.33, 9876). Tvoj server acceptuje konekciju, dobijas input i output stream pa radis sta zelis. Bitno je takodje da imas otvoren port 9876. Ako imas ruter ili firewall onda ti je taj port 100% blokiran pa moras namestiti da imas otvoren pristup.

Najlaksi nacin za testiranje je da pokrenes svoju server aplikaciju, tako da se ona poveze na zeljeni port. Zatim sa klijentske masine koristis vec postojeci telnet, tj. napises u konzoli "telnet 62.193.139.54 9876" i ako uspes da se povezes, onda znaci da ti radi server, i firewall te ne blokira. Nakon toga slobodno pisi svoj klijent.

I nemoj zaboraviti da uvek zatvoris port po izlazku iz aplikacije, inace ces morati da menjas port svaki put, ili da restartujes kompjuter.
 
Odgovor na temu

IDE

Član broj: 53403
Poruke: 586
78.155.45.*



Profil

icon Re: Komunikacija preko socket-a23.04.2009. u 13:40 - pre 182 meseci
@krstak84: gajo2 ti je u gornjem postu sve fino objasnio...

Osvrnuo bih se samo na zadnju recenicu. Mislim da se port automatski oslobadja kada se zatvori aplikacija jer ga je ona i zauzela , pa se ne zahtjeva neka posebna akcija od programera za oslobadjanje porta...
there's something out there
waiting for us,
and it ain't no man...
 
Odgovor na temu

krstak84
student

Član broj: 210622
Poruke: 64
*.dynamic.sbb.rs.



Profil

icon Re: Komunikacija preko socket-a23.04.2009. u 15:07 - pre 182 meseci
Ok, kontam sve, ali kako ja da nadjem moju pravu IP adresu na netu?

Probao sam preko sajta www.whatismyip.com i on mi tamo pokaze tu adresu, ali kada klijent ukuca tu adresu da bi uspostavio sa mnom konekciju, ne moze da me nadje. Naravno ja sam pre nego sto je on pukusao da se poveze sa mnom, pokrenuo serverski kod i rekao mu moju stvarnu ip koju sam nasao preko onog sajta.

Ali ocigledno da nije to ta IP adresa, pa me zato zanima kako ja mogu da vidim moju stvarnu ip adresu.

Imam firewall, a kako onda da podesim da mi recimo port 7675 bude slobodan, tj. da ge ne blokira firewall. Koristim Eset.
 
Odgovor na temu

gajo2
Budapest

Član broj: 62614
Poruke: 518
*.dynamic.dsl.t-2.net.

Sajt: b.flyingoranges.com


+117 Profil

icon Re: Komunikacija preko socket-a23.04.2009. u 17:56 - pre 182 meseci
E to vec pitaj na nekom drugom forumu, pre ces dobiti odgovor nego ovde. Ja znam samo Windows firewall i svoj ruter da namestim...
 
Odgovor na temu

[es] :: Java :: Komunikacija preko socket-a

[ Pregleda: 2880 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.