mikrocontroller.net

Forum: PC-Programmierung DHCP-Request senden und Offer empfangen, OHNE dass die eigenen Netzwerkkarte das annimmt?


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
Autor: Frank E. (Firma: Q3) (qualidat)
Datum:

Bewertung
-3 lesenswert
nicht lesenswert
Gibt es eine Möglichkeit, mit Sockets (Java, Xojo ...) DHCP-Requests 
auszusenden und die Antworten des/der DHCP-Server zu empfangen, ohne 
dass dabei das aktuell benutzte NIC (Ethernet bzw. WLAN) des verwendeten 
Arbeitsrechners (z.B. Laptop) dann darauf eingeht bzw. sich um- oder 
neukonfiguriert?

Hintergrund ist, dass ich häufig den Verdacht hege (und irgendwann auch 
bestätigt bekomme), dass in Kundennetzen unabsichtlich zusätzliche 
DHCP-Server eingebracht werden, z.B. beim Anschluss eines Accesspoints, 
die dann für Probleme im Netz sorgen.

Es gibt natürlich solche Tools, aber alle, die ich im Web finden konnte, 
waren ausschießlich für Windows oder Linux, bisher nix für den Mac

Ich habe auch Skripte bzw. Shell-Befehle gefunden, eine neue Lease 
anzufordern bzw. sich mit "ipconfig getpacket ..." anzusehen, welche IP 
der DHCP hat, aber das verändert ja immer meine aktiv genutzte 
Netzwerkverbindung, das will ich eigentlich nicht.

... Ich würde mir ganz gene so ein Tool mit praktischer GUI für den Mac 
selber stricken.



Danke für Tips.

: Bearbeitet durch User
Autor: Rufus Τ. F. (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Solange Dein IP-Stack mit statischer IP-Adresse arbeitet, sollte der 
sich für empfangene DHCP-Pakete überhaupt nicht interessieren.

Autor: Illi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hier in der Fa. haben wir von Softperfect Network Scanner. Der kann auch 
DHCP-Server auflisten.

Sollte es auch für MacOs geben.

Im Prinzip wird das wohl jedes 2. Netzwerk-Tool leisten.

Gruß Illi

Autor: Frank E. (Firma: Q3) (qualidat)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Rufus Τ. F. schrieb:
> Solange Dein IP-Stack mit statischer IP-Adresse arbeitet, sollte
> der
> sich für empfangene DHCP-Pakete überhaupt nicht interessieren.

Jaaa ... das ist klar, aber meist bin ich aber in Kundennetzen selber 
auch mit DHCP unterwegs. Klar könnte ich das auf statisch umstellen, 
aber das ist ja unbequem :-)


Ein ausgesandter DHCP-Request bekommt ja zwangsläufig die MAC-Adresse 
meiner benutzten Netzwerkkarte. Man müsste mal testen, was der IP-Stack 
macht, wenn ein neues Offer eintrifft, bevor die Lease abgelaufen ist 
...

Ne andere Idee wäre, für sowas z.B. einen Arduino mit Ethernetshield zu 
verwenden, der pausenlos DHCP-Requests "feuert" und die Antworten per 
USB an eine Anzeige-App liefert.

Autor: Oliver S. (oliverso)
Datum:

Bewertung
2 lesenswert
nicht lesenswert
Frank E. schrieb:
> Es gibt natürlich solche Tools, aber alle, die ich im Web finden konnte,
> waren ausschießlich für Windows oder Linux, bisher nix für den Mac

Nun ja, wenn man professionell mit solchen Problemstellungem zu tun hat, 
wäre angemessenes Werkzeug schon zu empfehlen.

Oliver

Autor: c-hater (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Frank E. schrieb:

> Ein ausgesandter DHCP-Request bekommt ja zwangsläufig die MAC-Adresse
> meiner benutzten Netzwerkkarte.

Klar, sonst könnte ihn die Antwort in den heute üblichen geswitchten 
Netzen wohl kaum erreichen.

Wenn man also das machen will, was du machen willst, muss man schon ein 
wenig ausgreifender hantieren. Im Prinzip läuft es darauf hinaus, der 
NIC eine zweite MAC überzuhelfen. Das ist allerdings genau das, was 
sowieso passiert, wenn man z.B. virtuelle Maschinen an eine physische 
Netzwerkkarte ankoppelt (und dabei nicht NAT verwendet). Insofern also 
absolut trivial zu lösen, also insbesondere ohne jeden 
Programmieraufwand oder irgendwelche abstrusen Tools...

Nur würde das dein Problem in keinster Weise lösen. Das Problem ist ja 
wohl: weise nach, dass es mehr als einen DHCP-Server im Netz gibt. Dazu 
ist es erstens weder notwendig noch sinnvoll, selber mit zwei 
"Identitäten" zu hantieren. Und zweitens ist es auch noch sehr simpel: 
Man bemüht einfach Wireshark, tcpdump oder sonst irgendein übliches 
Sniffer-Tool, was in der Lage ist, den Traffic anzuzeigen und auf DHCP 
zu filtern.

Wo also ist das Problem? Zu einfach?

Autor: Sven L. (sven_rvbg)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Soll managebare Switche geben die an den "Client-Ports" keinen 
DHCP-Server erlauben bzw. durchlassen.

Autor: c-hater (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Sven L. schrieb:

> Soll managebare Switche geben die an den "Client-Ports" keinen
> DHCP-Server erlauben bzw. durchlassen.

Mehr noch: fast jeder managebare Switch bietet diese Option an. Nur halt 
nicht jeder DAU-tauglich...

Aber das war ja garnicht das Thema. Frank ist ja offensichtlich gerade 
nicht Admin der Netze, um die es geht. Wäre es so, hätte er noch ganz 
andere Möglichkeiten, als unerwünschten Scheiss einfach nur zu 
unterdrücken...

Autor: Sven L. (sven_rvbg)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
c-hater schrieb:
> Aber das war ja garnicht das Thema.

Nö aber wenn ich ein Netz habe, in dem es so ausufert, dann schieß ich 
halt mit so ner Lösung dagegen.

Autor: Local Area Notwork (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
2te NIC, z.B. per USB?

Autor: georg (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Local Area Notwork schrieb:
> 2te NIC

Es gibt ja NICs, die "promiscous mode" können, also alles empfangen, was 
auf der Leitung ist, auch wenn es nicht an sie adressiert ist. Die sind 
natürlich ideal für die Analyse, das ist aber auch nur die halbe Miete, 
man muss zusätzlich noch den Switch überreden, alles an den 
entsprechenden Port durchzustellen. Auch das gibt es natürlich.

Einfach nach DHCP fragen hilft wenig, da meldet sich ganz zufällig* 
einer der (vielen) DHCP-Server im Netz. Das sieht man, wenn man 
(korrekterweise) den vorhandenen DHCP-Servern unterschiedlich 
IP-Bereiche zuordnet, dann kann man nachsehen, bie welchem sich der 
Client angemeldet hat.

*wäre das nicht so, bestünde ja das Problem nicht.

Georg

Autor: Jörg E. (jackfritt)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Virtuelle Maschine aufsetzen mit eigener MAC? Keine Ahnung was es da für 
den Apple gibt.

Autor: Rufus Τ. F. (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jörg E. schrieb:
> Keine Ahnung was es da für den Apple gibt.

VirtualBox, VMware Fusion, Parallels ...

Autor: Jack (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Frank E. schrieb:
> Gibt es eine Möglichkeit, mit Sockets (Java, Xojo ...) DHCP-Requests
> auszusenden und die Antworten des/der DHCP-Server zu empfangen, _ohne_
> dass dabei das aktuell benutzte NIC (Ethernet bzw. WLAN) des verwendeten
> Arbeitsrechners (z.B. Laptop) dann darauf eingeht bzw. sich um- oder
> neukonfiguriert?

Keine Requests senden, sondern ein DHCP Discover broadcasten und sich 
dann ansehen welche DHCP Offer Antworten man bekommt. Auf die Offer 
reagiert man eben nicht mit einem Request.

Das kann man mit jeder halbwegs brauchbaren Programmiersprache. Einziges 
Problem ist der Port 68. Der wird bereits vom DHCP-Client des 
Betriebssystems belegt. Den muss man abschalten oder man nimmt eine VM 
in der man ihn abgeschaltet hat.

Die viel einfachere Lösung wurde aber schon genannt. Mit Wireshark 
zusehen was passiert wenn sich der Rechner eine IP-Adresse per DHCP 
holt. Bekommt man DHCP Offer von unterschiedlichen Quellen, dann liegt 
der Verdacht nahe das etwas nicht stimmt. Ein Beweis ist es nicht, aber 
ein Anfang. Es gibt DHCP-Konfigurationen bei denen das in Ordnung ist.

Autor: Ggf. mal man dhcpcd tippen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Frank E. schrieb:
> Rufus Τ. F. schrieb:
>> Solange Dein IP-Stack mit statischer IP-Adresse arbeitet, sollte
>> der
>> sich für empfangene DHCP-Pakete überhaupt nicht interessieren.
>
> Jaaa ... das ist klar, aber meist bin ich aber in Kundennetzen selber
> auch mit DHCP unterwegs. Klar könnte ich das auf statisch umstellen,
> aber das ist ja unbequem :-)
>
>

Welches Mopped? Ggf. man dhcpcd


ohne jetz zu gucken -T ( test? ohne dann zu schreiben) dann kann man ja 
auch noch eine weitere, andere client-ID senden, die mac ist ja ldgl. 
der default und ein Adapter kann ja auch mehrere per dhcp bezogene 
Adressen haben.

Kann da aber nur wenig tipps geben, da beschäftige ich mich so selten 
mit als dass das beim nächsten mal schon wieder vergessen ist ..


> Ein ausgesandter DHCP-Request bekommt ja zwangsläufig die MAC-Adresse
> meiner benutzten Netzwerkkarte.

Mit nichten, stichwort "client-ID"

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.