[C#] Verbonden clients ophalen

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • Niles
  • Registratie: Januari 2003
  • Laatst online: 27-01-2024
We zijn op school bezig met een project. Voor dit project is een computer ingesteld als wifi access point middels een tooltje genaamd Virtual Router (http://virtualrouter.codeplex.com/). We hebben voor deze tool gekozen omdat deze als enige een service aanbied die ons een lijst met verbonden clients terug kan geven (middels een getConnectedPeers() methode), en omdat deze volledig in C# is geschreven, waarmee wij redelijk bekend zijn. En dat is precies wat we nodig hebben: We willen namelijk in een eigen programma het IP-adres, pc naam en eventueel het MAC-adres ophalen van alle verbonden clients zodat deze uiteindelijk op een al bestaande touchtafel getoond kunnen worden (Microsoft surface idee). We hebben een kleine testtool gemaakt om de service die Virtual Router aanbied uit te lezen en de informatie die wij willen hebben in de commandline te tonen. Dit is puur voor de test:

C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
static void Main(string[] args)
{
       VirtualRouterHostClient client = new VirtualRouterHostClient();
       var peers = client.GetConnectedPeers(); // Dit is zoals in documentatie van de service

       foreach (var p in peers)
       {
           var ipinfo = IPInfo.GetIPInfo(p.MacAddress); 

           Console.WriteLine(ipinfo.MacAddress);
           Console.WriteLine(ipinfo.IPAddress);
           Console.WriteLine(ipinfo.HostName);
           Console.WriteLine("-------------------------------------");            
       }

       Console.ReadLine();
}


Nu werkt Virtual Router niet al te best. Bovenstaande code werkt dan ook niet; de lijst met connected peers is leeg. Dit komt omdat Virtual Router wel een AP opzet, maar geen IP adressen wil uitdelen aan de clients. Soms start VR zelfs helemaal niet op ("Virtual Router can not be started"); Niet een al te stabiel programma dus. Alle workarounds die op codeplex bij het project staan hebben we geprobeerd. Soms met succes, maar soms werkt het dan na een reboot al niet meer. Bepaald niet stabiel dus.
Andere soortgelijke programma's bieden daarentegen geen service aan waarmee we een simpele lijst met verbonden clients kunnen ophalen. Een standaard Microsoft ad-hoc netwerk is ook geen optie, omdat Android devices niet kunnen verbinden met een ad-hoc netwerk, en wij werken juist met android telefoons.

Wat wij dus willen is simpelweg van een pc een access point maken en een lijst ophalen met verbonden clients. Naar ons idee zou dit toch niet al te moeilijk moeten zijn maar we hebben er als tweetal nu al in totaal zo'n 4 dagen van 6 uur in gestoken maar krijgen het niet voor elkaar.

Iemand een handige oplossing voor dit probleem of ervaring met Virtual Router?

Acties:
  • 0 Henk 'm!

  • WhizzCat
  • Registratie: November 2001
  • Laatst online: 15-05-2024

WhizzCat

www.lichtsignaal.nl

Waarom niet een simpel AP kopen van 2 tientjes en dat met SNMP uitlezen...?

Gezocht: netwerkbeheerder
Als je het niet aan een 6-jarige kan uitleggen, snap je er zelf ook niks van! - A. Einstein


Acties:
  • 0 Henk 'm!

  • evolution536
  • Registratie: Maart 2009
  • Laatst online: 05-06-2024

evolution536

besh besh

Precies wat WhizzCat zegt. Is het belangrijk om 300N te hebben? Anders zou ik een Linksys WRT54G op de kop tikken en daar DD-WRT opzetten. Dat zal zeker werken.

Acties:
  • 0 Henk 'm!

  • pedorus
  • Registratie: Januari 2008
  • Niet online
Als er geen IPs worden uitgedeeld, dan betekend dat waarschijnlijk dat Wireless Hosted Network wel draait, maar Internet Connection Sharing (ICS) niet (of niet richting de juiste virtuele netwerkverbinding).

In principe is dat hele virtual router niet nodig, je kan ook met de command line de boel op zetten. Lijkt me handig om eens te doen, want het schijnt dat niet alle hardware wordt ondersteund. :p

Als dat draait dan kun je desnoods met "netsh wlan show hostednetwork" en/of "arp -a" (evt in combinatie met "ping -a <ipadres>") kijken welke clients er op welk ip verbonden zijn. Eigenlijk heb je dus enkel windows 7 nodig, en niets anders. ;)

Ik kan het nog sterker vertellen, dat doet virtual router intern ook, zie hier. Handige is vooral de code voor notificaties van Wireless Hosted Network.

Vitamine D tekorten in Nederland | Dodelijk coronaforum gesloten