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

Slanje podataka na računar koji ima ruter. Kako?

[es] :: .NET :: Slanje podataka na računar koji ima ruter. Kako?

[ Pregleda: 2155 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

toxi_programer
Nemanja Todić
Beograd

Član broj: 104396
Poruke: 464
*.vdial.verat.net.

Sajt: www.articles411.com


+8 Profil

icon Slanje podataka na računar koji ima ruter. Kako?03.09.2007. u 17:54 - pre 203 meseci
Evo mene opet...
Pravim "nešto" što treba da "komunicira" preko interneta. OK, radi ponegde, odnosno znam da pošaljem i primim podatke ali...

Ovo obično radi, ali ne na svakom računaru. Recimo da neko ko ima ruter( ja doduše pojma nemam kako sve to radi) 'oće da mi pošalje preko mog program neke podatke. Ja imam dial-up i to radi sve. A kad ja hoću njemu( onom koji ima ruter) da pošaljem podatke to ne može da se ostvari. Ne mogu ni da se "konektujem" na njegov IP.
To je valjda zato što se na ruter mogu priključiti i dva računara i onda bi oni imali isti IP, pa bi se "neko" zbunio i ne bi znao gde treba da pošalje podatke( na koji od računara).
IP adresu na koju šaljem podatke dobijem sledećim kodom:
Code:

Dns.GetHostAddresses(Dns.GetHostName())[0];

to je ustvari adresa lokalnog računara koja se zatim pošalje na neki server i ja je odatle preuzmem i onda se na nju konektujem i pošaljem podatke.
Mislim da bi trebalo da se na neki način funkciji Connect Socket klase kao parametar da IP adresa i rutera i samog tog računara, a verovatno grešim i verovatno mi je pretpostavka smešna .

Any help?
 
Odgovor na temu

DarkMan
Darko Matesic

Član broj: 20445
Poruke: 572
77.46.227.*

Jabber: DarkMan


Profil

icon Re: Slanje podataka na računar koji ima ruter. Kako?03.09.2007. u 18:42 - pre 203 meseci
Ako se taj drugi racunar uspesno konektuje ka tebi a ti ne mozes da se konektujes ka njemu i taj racunar je iza rutera onda je problem samo do rutera tj. konfiguracije rutera i to nema veze sa tvojim programom.
Vidi prvo na kom portu ces uspostavljati vezu tj. na kom portu slusa taj racunar iza rutera i onda konfigurisi da ruter forwarduje taj port na njegovu ip adresu (postoje i drugi nacini, najjednostavnije je ukljuciti DMZ i onda se sve prosledjuje ka njemu, ili najkomplikovanije za tebe da na ruteru ukljucis uPNP i onda isprogramiras u tvom programu uPNP koji ce sam otvarati portove na ruteru koji mu trebaju).
 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12851



+4784 Profil

icon Re: Slanje podataka na računar koji ima ruter. Kako?03.09.2007. u 20:01 - pre 203 meseci
Citat:
toxi_programer: Recimo da neko ko ima ruter( ja doduše pojma nemam kako sve to radi)

Ne bi bilo lose da naucis. Ozbiljno, ne moras da postanes mrezni ekspert ali neke osnovne stvari bi trebao znati ako programiras nesto sto ima veze sa tim.
Ovde konkretno nema veze sto ima ruter i i ga imas samo ne kod kuce, ti paketi prodju kroz 7-8 i vise rutera ako idu preko Interneta. Problem je sto je NAT-ovan. Sad wikipediju pa pogledaj sta je NAT.
Ukoliko ima mogucnost da konfigurise ruter, onda treba da forward-uje port (tamo na wikiepdiji pogledaj i sta je port forward-ing) a ako nema tu mogucnost onda ne mozes ti da se kacis na njega, mora obratno (nebitno koji se komp na koji zakaci, u oba slucaja mozes slati podatke u oba smera).
 
Odgovor na temu

toxi_programer
Nemanja Todić
Beograd

Član broj: 104396
Poruke: 464
*.vdial.verat.net.

Sajt: www.articles411.com


+8 Profil

icon Re: Slanje podataka na računar koji ima ruter. Kako?04.09.2007. u 20:08 - pre 203 meseci
OK, hvala na odgovorima.
Shadowed, pročitah o NAT-u, ruterima, port forward-ingu. :) Više manje sam to ipak znao, tako se ispostavilo...
Dakle, lik koji ima ruter kod sebe jeste u mogućnosti da na isti poveže više računara. Svaki računar( odnosno njegov mrežni adapter) ima svoju privatnu adresu. A kada "izlazi na internet" ruter "menja" njegovu lokalnu IP adresu i to je NAT( network address translation). Na taj način svi kompjuteri u lokalnoj mreži mogu da koriste istu konekciju na internet i s' toga će imati istu IP adresu, a ta se adresa može smatrati adresom samog tog rutera a adresa lokalnog računara bi bila jednaka "adresa rutera + privatna adresa računara". Odnosno, ja pošaljem podatke na adresu rutera i to na određeni port a on onda prosledi te podatke( port forwarding) na port odgovarajućeg lokalnog računara. E eto ga problem :) Oboje ste rekli "konfigurišem ruter...", kako da ga konfigurišem? Iz koda svog programa? To pojma nemam da uradim.
Ako sam dobro shvatio na ruteru se može isključiti NAT i onda bi moj program opisan u prvom postu radio jer bi onda ruter "znao" da postoji samo jedan komp iza njega te da na njega treba proslediti podatke. U suprotnom, kako je moguće reći ruteru na koji od lokalnih računara da pošalje( odnosno prosledi) podatke?
Izvinite što je tekst poduži, jesam preterao sa "opisima" ali to je da ne biste pomislili da nisam pročitao sve što mi je rečeno da bih trebao znati ;)
 
Odgovor na temu

DarkMan
Darko Matesic

Član broj: 20445
Poruke: 572
77.46.178.*

Jabber: DarkMan


Profil

icon Re: Slanje podataka na računar koji ima ruter. Kako?04.09.2007. u 21:14 - pre 203 meseci
Citat:
toxi_programer: Oboje ste rekli "konfigurišem ruter...", kako da ga konfigurišem? Iz koda svog programa? To pojma nemam da uradim.

Vec sam ti rekao da mozes ili rucno (van svog programa) da konfigurises ruter ili, ako hoces programski da koristis uPNP.

Rucna konfiguracija jeste jednostavna ali nacin konfiguracije zavisi od modela rutera (idi kod drugara koji je uzeo telekomov ADSL, najverovatnije da je dobio ruter pa vidi malo kako se konfigurise, sve se radi preko browsera).

Drugi nacin je uPNP tj. ti isporgramiras tvoj program koji ce da javi ruteru "forwarduj mi taj i taj port ovamo" (uPNP koristi dosta mreznih programa: uTorrent, eMule, ...). Probao sam da potrazim da li ima sta o koriscenju uPNP-a za C# (ili .NET generalno) ali nisam nista nasao. Na adresi http://www.codeproject.com/internet/PortForward.asp imas opis ali koliko vidim u pitanju je C++. Ako ista uspes (kao na primer da napises neki modul/klasu za uPNP) mogao bi to da podelis sa ostalima, mozda nam bude nekada i trebalo.

Pozdrav.
 
Odgovor na temu

toxi_programer
Nemanja Todić
Beograd

Član broj: 104396
Poruke: 464
*.adsl-1.sezampro.yu.

Sajt: www.articles411.com


+8 Profil

icon Re: Slanje podataka na računar koji ima ruter. Kako?30.09.2007. u 20:47 - pre 202 meseci
Evo me posle dužeg vremena...
DarkMan, gledao sam onaj projekat na CP, što si da o link, međutim kad skinem kod i kompajliram piše da nedostaju neki od fajlova. Od toga sam odustao.

Ipak, našao sam rešenje i to baš u C# jeziku. Reče da javim ako nađem nešto, pa evo je adresa:
http://www.pixvillage.com/blogs/devblog/archive/2005/03/31/183.aspx

To bi trebalo da je to...
 
Odgovor na temu

[es] :: .NET :: Slanje podataka na računar koji ima ruter. Kako?

[ Pregleda: 2155 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

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