Broadcast Adresse auslesen und Nachricht verschicken



  • Ich würde gerne die Broadcast-Adresse (welche ja per DHCP übertragen wird) herausfinden und dann eine Nachricht an diese (also an alle Rechner im Netz) verschicken.

    Hat irgendjemand Hinweise wie das geht (MFC VS2005)? Danke



  • Ich verstehe Dein Problem nicht, die Broadcastadresse lässt sich doch trivial einfach aus IP-Adresse und Subnetzmaske berechnen. Oder hast Du diese Angaben zu diesem Zeitpunkt noch nicht?



  • Die Broadcastadresse wird vom DHCP mitgesendet (natürlich kann man sie auch selber berechnen)... jedoch habe ich unter Windows festgestellt das die Broadcastadresse bei nicht trivialen Subnetzmasken irgendwie eigenartig ist :).

    Beispiel:

    Netzwerkmaske: 255.255.255.192
    Windows wählt dann als Broadcastadresse (zumindest bei mir) in den letzten beiden Stellen xxx.yyy.255.255

    Obwohl durch DHCP die korrekte Broadcastadresse geschickt wird, passt Windows die Route "falsch" an.

    Deswegen würde ich gerne irgendwie über nen API-Befehl die Broadcast-Adresse auslesen anstelle sie selber zu berechnen. Dann bin ich auf der sicheren Seite, da sie so hinterlegt ist im System.



  • NetCol schrieb:

    Die Broadcastadresse wird vom DHCP mitgesendet

    In welchem Paket? In DHCPOFFER?



  • In welchem Paket? In DHCPOFFER?

    Das vermute ich... An einer andere Stelle würde es aus meiner Sicht keinen Sinn machen :). Mir wurde es nur so gesagt, dass der DHCP-Server bei seinem Konfiguraionsangebot (das sollte DHCPOFFER sein) diese Adresse mitschickt.



  • NetCol schrieb:

    Netzwerkmaske: 255.255.255.192
    Windows wählt dann als Broadcastadresse (zumindest bei mir) in den letzten beiden Stellen xxx.yyy.255.255

    Was ist denn - Deiner Meinung nach - daran falsch und warum? Welche Adresse benutzt denn ein DHCP Client zum Broadcasten des DHCPDISCOVER?



  • Korrekt wäre meiner Ansicht nach

    xxx.yyy.zzz.191



  • Na ja, 100%-ig technisch gesehen hast Du da schon Recht, aber benutzen könnte man doch auch 255.255.255.255 oder eben xxx.yyy.255.255. DHCP soll laut RFC als Broadcastadresse beim DHCPDISCOVER 255.255.255.255 in die Zieladresse eintragen. Dies funktioniert natürlich nur, weil Router keine Broadcasts weiterleiten (dürfen). Aus diesem Grunde benötigt man ja auch Relay-Agents, wenn der DHCP Server nicht im eigenen Subnetz liegt.


Anmelden zum Antworten