Hej Har labbat lite: Nu kommer jag med ett förslag som ändrar förutsättningarna helt! :-) Bästa sättet är att skicka ett broadcast medellande via UDP. Vet ej exact kodmässigt hur man gör, men varje app anmäller sig för ett broadcast medellamde och sedan skickar man ett msg till en ip adress som sedan alla anmälda kan svara på.server scan
Jag har ett pocketpc program som skall kunna connecta till flera servrar i nätverket. Server i det här fallet betyder dator som har port 10000 öppen och svarar på telegram...
Från klienten vill jag scanna nätverket enligt dessa kriterier för att då användaren med pocketpc'n (klienten) skall kunna välja server.
Tacksam för tips!
/peterbladhSv: server scan
Man kan försöka connecta mot samtliga, men görs det seriellt tar det väldigt lång tid. Men man kan ju connecta asynchront (BeginConnect), så det bör gå att kolla flera servrar parallellt. Eller så kan man köra connect på olika trådar (men det finns väl ett tak?).
Kom gärna med synpunkter!
/peterSv: server scan
Det förutsätter 3 saker. att du skriver server-mjukvaran, att du skriver klientmjukvaran, att det finns en DNS-tjänst på nätet som stödjer SRV-records.
Som sysadmin så blir jag inte glad över applikationer som håller på att scanna mitt nät. Det tar onödigt lång tid. I synnerhet om det är ett litet större nät. Och hur vet man vilket intervall man ska skanna? I vårt nya nät så kommer det att finnas 4 subnät. Känner klienten till dessa?
En tidigare lösning var att broadcasta efter en tjänst. Detta fungerade om man satt på 1 subnät.
Dagens lösning bygger på att server-mjukvaran registrerar sin tjänst som ett SRV-record (Service) i en lokal DNS. Sedan så frågar helt enkelt klienten DNS-servern efter vilka servrar som finns. Enkelt, snabbt och smidigt!
Men den lösningen förutsätter som sagt de 3 första punkterna!Sv: server scan