[ ivanmaat @ 01.06.2010. 11:03 ] @
| E ovako imam par pitanja.
Zanima me mrezno programiranje, i nasao sam dosta materijala, ali me zanima koji je pristup najbolji. Da li da odma krenem sa .NET-om i C#, ili mozda da to bude ipak na malo nizem nivou u C ili C++?
Hvala.
|
[ Radovan__III @ 01.06.2010. 11:13 ] @
Zavisi sta zelis da pravis i za koji sistem. Ako zelis da pravis mrezne desktop aplikacije ( tipa chat, razni transfer kilijenti itd ... ) koje ce se izvrsavati na win ( ocekujes da postoji net framework ) onda izaberi c# ili "visual" c++ nebitno. Ako zelis da ides na neki nizi nivo da kreiras mrezne protokole ili ko zna sta onda su ti tu c++ , c , mozda cak zatreba i assembler zasvisno opet od nivoa
[ Sapphire @ 01.06.2010. 14:42 ] @
Nekad davno sam radio full-scaled socket mrežnu aplikaciju za "imaginarni" lanac videoteka. C#/.NET je savršeno dovoljan izbor za takve stvari ...
[ mmwlada @ 02.06.2010. 08:59 ] @
Kao što reče Radovan___III, zavisi na kom nivou želiš da radiš. Ako ne želiš da kreiraš nov TCP ili IP protokol, onda ti je C# odličan alat.
Međutim, ako želiš niži nivo (TCP, UDP, IP....) onda je možda bolje da ideš sa C++.
Ja sam radio par aplikacija koje su koristile svoje aplikativne protokole i TCP/IP na nižem nivou i C# je prošao sjajno.
[ mmix @ 02.06.2010. 10:15 ] @
Mozes da pises i nize drajvere pod uslovom da mogu da se implementiraju kao UMDF (user mode) drajveri jednostavno zato sto .NET mozes da publikujes kao COM. Sad ostaje pitanje dal stvarno zelis da imas driver sa memory footprintom od 50 mb :)
Kernel (ring0) drajveri moraju native (c, cpp), sve i da napravis hookove kako treba .net runtime ne moze da se podigne u kernel modu.
[ ivanmaat @ 02.06.2010. 11:50 ] @
Zanimaju me i visi i nizi nivo.
Za pocetak bi radio aplikaciju koja ima npr opcije da iscrtava graf koji prikazuje rad mreze, onda npr da ima opciju da se zada IP adresa i da moze da skenira portove. E sad ovo za skeniranje portova ne znam da li je to moguce u C#.
Mozda nije lose krenuti sa C#, pa kad se razume na tom visem nivou logika i kako funkcionise sve to, onda se polako spustati na detaljniji nizi nivo.
[ Shadowed @ 02.06.2010. 14:08 ] @
Mozes sve to u C# (i vise, ako koristis raw sockets).
[ ivanmaat @ 24.08.2010. 20:48 ] @
Sad bas trazim da li postoji vec gotova funkcija sa kojom mogu da dobijem informaciju za IP adresu kog je tipa, da li A, B, C... ali za sada nista ne nalazim.
[ mmix @ 24.08.2010. 21:02 ] @
kako mislis ABC? Mislis klasa IP adrese? Ja koliko znam to vise niko ne koristi, ICANN alokacije adresa sad radi na razlicitima granulacijama.
[ ivanmaat @ 24.08.2010. 21:36 ] @
Da klasa IP adrese.
Mislio sam da pored ip adrese ispisem kojem tipu pripada ta odredjena ip adresa, pa me zanima da li u C# postoji vec gotova funkcija.
[ mmix @ 24.08.2010. 21:45 ] @
Kazem ti ta klasifikacija vise ne postoji u praksi samim tim ne mozes ni da je odredis. Te klase su sada postale /8 /16 i /24 subneti a alokacija IP adresa u subnetu moze da ide od /8 do /30 i pride jos adrese cak ne moraju biti ni javene vec mogu biti u nekom od intranet opsega (recimo 10.0.0.0/8 ili 192.168.1.0/24). Dodatni problem ti cini to sto masina moze da bude multihost i da ima vise IP adresa na vise subneta.
Generalno informacija o subnetU 9subnet mask) je u adapteru
Code (csharp):
foreach( adapter in EnumAllNetworkAdapters() )
{
var x = adapter.subnetmask;
}
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|