Statische Routen mit Shorewall, ISC-DHCP Server konfigurieren für Android Devices
Hallo,
ich versuche derzeit einen DHCP Server einzurichten.
Debian 8.7 mit ISC-DHCP.
Der Server liegt auf einer 3 Wege Firewall (shorewall) 192.168.1.246, die aus dem inneren Segment (192.168.1.0) einerseits nach außen geht und andererseits in ein (noch ungenutztes) DMZ Segment.
Außerdem liegt im inneren Segment eine Windows Domäne mit DNS und DHCP Server, den ich angehalten habe. Der ISC-DHCP ist sozusagen der Versuch, den Windows DHCP abzulösen.
Das innere Segment hat auf einem anderen System (Hardware) über einen weiteren Router (192.168.1.245) einen Zugang zu einer bestehenden DMZ.(192.168.2.0).
Das Routing funktioniert aber leider nur in den Windows Systemen.
Hier klappt ein Ping oder Trace in die bestehende DMZ problemlos.
Das gleiche funktioniert nicht mit einem Android Device (Pixel C oder Samsgung Galaxy Tab).
Die Geräte gehen schlicht über die Default Route nach draußen, was ich mittels Fling und Net Info geprüft habe.
Die Konfiguration sieht derzeit so aus:
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.120 192.168.1.139;
option routers 192.168.1.246;
#option static-routes 192.168.2.233 192.168.1.245;
ich versuche derzeit einen DHCP Server einzurichten.
Debian 8.7 mit ISC-DHCP.
Der Server liegt auf einer 3 Wege Firewall (shorewall) 192.168.1.246, die aus dem inneren Segment (192.168.1.0) einerseits nach außen geht und andererseits in ein (noch ungenutztes) DMZ Segment.
Außerdem liegt im inneren Segment eine Windows Domäne mit DNS und DHCP Server, den ich angehalten habe. Der ISC-DHCP ist sozusagen der Versuch, den Windows DHCP abzulösen.
Das innere Segment hat auf einem anderen System (Hardware) über einen weiteren Router (192.168.1.245) einen Zugang zu einer bestehenden DMZ.(192.168.2.0).
Das Routing funktioniert aber leider nur in den Windows Systemen.
Hier klappt ein Ping oder Trace in die bestehende DMZ problemlos.
Das gleiche funktioniert nicht mit einem Android Device (Pixel C oder Samsgung Galaxy Tab).
Die Geräte gehen schlicht über die Default Route nach draußen, was ich mittels Fling und Net Info geprüft habe.
Die Konfiguration sieht derzeit so aus:
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.120 192.168.1.139;
option routers 192.168.1.246;
#option static-routes 192.168.2.233 192.168.1.245;
- Push static routes with ISC DHCP server to leases tables.
option ms-classless-static-routes 24,192,168,2,192,168,1,245;
}
Bei meiner bisherigen Recherche bin ich auf diverse Threads gestoßen, die die Android Problematik mit den oben in der conf aufgeführten options
rfc3442-classless-static-routes usw. lösen, hier funktioniert das aber nicht.
In einem weiteren Versuch habe ich das DMZ Segment als eigenständiges Subnet angelegt, was mir aber irgendwie auch schräg erscheint und es funktioniert auch nicht.
Ich habe das Gefühl, dass ich hier irgendwie auf der falschen Spur bin und würde mich sehr über Hinweise freuen.
Gruß, Terminator
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 333417
Url: https://administrator.de/contentid/333417
Ausgedruckt am: 26.11.2024 um 11:11 Uhr
27 Kommentare
Neuester Kommentar
Moin,
Also ab auf die Firewall/GW mit der statischen Route:
Und schon ist dein Problem gelöst.
http://linux-ip.net/html/tools-ip-route.html
Gruß p.
Ich habe das Gefühl, dass ich hier irgendwie auf der falschen Spur bin und würde mich sehr über Hinweise freuen.
jepp so ist es, statische Routen gehören natürlich immer auf das Gateway nicht auf den Client! So ist man nicht darauf angewiesen wie DHCP-Clients die Optionen interpretieren, oder ob sie diese Optionen überhaupt anwenden.Also ab auf die Firewall/GW mit der statischen Route:
ip route add 192.168.2.0/24 via 192.168.1.245
Und schon ist dein Problem gelöst.
http://linux-ip.net/html/tools-ip-route.html
Gruß p.
Für statische Routen gaaaaaanz selten, die gehören auf die Router und nicht die Clients.
Nur zum Verständnis:
statt auf dem Gateway dem DHCP Server statische Routen einzutragen, die er dann (erfolglos) einem Client übermittelt, soll ich auf OS Ebene die Route hinzufügen?
Korrekt!statt auf dem Gateway dem DHCP Server statische Routen einzutragen, die er dann (erfolglos) einem Client übermittelt, soll ich auf OS Ebene die Route hinzufügen?
Ein Client würde also per Default Gateway am Router / Gateway ankommen, dort für einen spezifischen Zielbereich die statische Route erhalten und zu einem anderen Router weitergeschickt?
Absolut richtig!
Moin,
Also zunächst mal müsstest du dir das TCP/IP Protokoll anschauen.
Dort findest du immer Quell- und Ziel-IP
Vereinfacht gesagt:
Wenn die Ziel-IP nicht im gleichen Subnetz wie die Quell-IP liegt, wird das Paket immer zum Gateway gesendet (sofern dem Client bekannt).
Wenn im Gateway statische Routen eingetragen sind, nimmt das Gateway das Paket und sendet es an das Gatway, welches in ihm als Ziel für die Ziel-IP angegeben wurde. Das nächste Gateway weiss dann, was es mit dem Paket machen soll: wieder weiterleiten.
Der Client bekommt davon nichts mit, warum auch? Hat ihn ja erstmal nicht zu jucken, wohin die Pakete gehen, hauptsache es kommt an und er bekommt eine Antwort.
Am DHCP-Server gibst du dem Client also nur (neben IP und Subnetzmaske) das Gateway und die DNS-Server mit.
Bei erforderniss ggf. noch solche Dinge wie NTP- oder BootP-Server...
https://www.edv-lehrgang.de/router-im-ip-netzwerk/
http://www.elektronik-kompendium.de/sites/net/0903151.htm
Mit clientseitigen statischen Routen haben wir mal in folgendem Szenario gearbeitet:
Sporadisch mussten wir für einer der Gruppe angehörigen Gesellschaft im IT-Support "support" leisten.
Da das aber nur von zwei Clients aus der gesamten IT zulässig und für diese Schwestergesellschaft ein anderes Gateway existent gewesen ist, haben wir dann kurz eine clientseitige Route gesetzt. IP: 192.168.123.0/24 an GW 192.168.08.15
Hätte man sicherlich auch anders lösen können, aber der Weg ist dann der pragmatischste gewesen, ohne gleich der gesamten IT mittels zusätzlicher Firewall den Zugang zu diesem Netz zu gewähren.
Gruß
em-pie
Also zunächst mal müsstest du dir das TCP/IP Protokoll anschauen.
Dort findest du immer Quell- und Ziel-IP
Vereinfacht gesagt:
Wenn die Ziel-IP nicht im gleichen Subnetz wie die Quell-IP liegt, wird das Paket immer zum Gateway gesendet (sofern dem Client bekannt).
Wenn im Gateway statische Routen eingetragen sind, nimmt das Gateway das Paket und sendet es an das Gatway, welches in ihm als Ziel für die Ziel-IP angegeben wurde. Das nächste Gateway weiss dann, was es mit dem Paket machen soll: wieder weiterleiten.
Der Client bekommt davon nichts mit, warum auch? Hat ihn ja erstmal nicht zu jucken, wohin die Pakete gehen, hauptsache es kommt an und er bekommt eine Antwort.
Am DHCP-Server gibst du dem Client also nur (neben IP und Subnetzmaske) das Gateway und die DNS-Server mit.
Bei erforderniss ggf. noch solche Dinge wie NTP- oder BootP-Server...
https://www.edv-lehrgang.de/router-im-ip-netzwerk/
http://www.elektronik-kompendium.de/sites/net/0903151.htm
Mit clientseitigen statischen Routen haben wir mal in folgendem Szenario gearbeitet:
Sporadisch mussten wir für einer der Gruppe angehörigen Gesellschaft im IT-Support "support" leisten.
Da das aber nur von zwei Clients aus der gesamten IT zulässig und für diese Schwestergesellschaft ein anderes Gateway existent gewesen ist, haben wir dann kurz eine clientseitige Route gesetzt. IP: 192.168.123.0/24 an GW 192.168.08.15
Hätte man sicherlich auch anders lösen können, aber der Weg ist dann der pragmatischste gewesen, ohne gleich der gesamten IT mittels zusätzlicher Firewall den Zugang zu diesem Netz zu gewähren.
Gruß
em-pie
Ist doch logisch warum die Route weg ist wenn du neu startest, obiger Befehl schreibt das nicht permanent in die Routing-Tabelle, für den permanenten Eintrag trägt man das in die Config ein:
http://www.prontosystems.org/tux/persistant_route
Routing-Tabellen Einträge am Gateway wirken sofort! Da gibt es keinen Cache bei den Clients.
Du solltest dir wirklich erst mal das 1 mal 1 des Routings aneignen, bevor du die Praxis anwendest.
http://www.prontosystems.org/tux/persistant_route
Routing-Tabellen Einträge am Gateway wirken sofort! Da gibt es keinen Cache bei den Clients.
Du solltest dir wirklich erst mal das 1 mal 1 des Routings aneignen, bevor du die Praxis anwendest.
Durch ein ip route add wird die Route aber nicht persistent abgelegt
Nach jedem Reboot ist die weg.
http://www.cloudibee.com/static-route-linux/
Nach jedem Reboot ist die weg.
http://www.cloudibee.com/static-route-linux/
Problem also, es wird ignoriert von Android.
nicht von Android, den interessieren die am GW hinterlegten Routen nicht.Dabei wäre auch die Frage, was es hier bei solchen Änderungen für "Latenzen" gibt. Die Frage klingt vielleicht blöd, aber in der Windows Welt mit DHCP und DNS und AD hatte man gefühlt immer etwas Zeit, bis solche Änderungen bei den Clients "ankamen", caches aktualisiert waren usw.
Was für Änderungen? Wenn du Routen an einem Gateway anlegst, muss da nichts zu einem Client gesendet werden.Oder anders: Müsste eine solche Änderung sofort greifen?
Ja.Genau das will ich doch, auch Android Devices sollen die Route annehmen.
Wenn deine Androiden die Routen nicht nehmen nutzen sie nicht dein Default GW, ganz einfach!Öffne auf deinen Androids eine Konsole und lass dir mit tracert die Routenverfolgung anzeigen, dann hast du es schwarz auf weiß.
Ein packet dump zeigt dir ebenfalls was Sache ist.
Ich glaube hier hapert es eher an den Grundlagen.
Du hast den Satz etwas falsch interpretiert/ hatte ich den unglücklich formuliert.
Wenn du am GW Routen setzt, ist es dem Client völlig egal, welche Routen dort liegen. Der Client weiss nur "ich muss die Pakete ans GW schicken, wenn sich das Ziel nicht in meinem Subnetz befindet!".
Wichtig ist also nur, dass der Client mitgeteilt bekommt, wie die IP seines Gateways lautet. Und genau das musst du in deinem DHCP-Server hinterlegen.
Welche IP-Settings bekommt dein Android denn (zu ersehen in den Einstellungen)?
Gruß
Wenn du am GW Routen setzt, ist es dem Client völlig egal, welche Routen dort liegen. Der Client weiss nur "ich muss die Pakete ans GW schicken, wenn sich das Ziel nicht in meinem Subnetz befindet!".
Wichtig ist also nur, dass der Client mitgeteilt bekommt, wie die IP seines Gateways lautet. Und genau das musst du in deinem DHCP-Server hinterlegen.
Welche IP-Settings bekommt dein Android denn (zu ersehen in den Einstellungen)?
Gruß
Wenn die Phones wirklich korrekte IP Settings haben bleibt eigentlich nur noch die shorewall auf der die ACLs falsch gesetzt oder Einschränkungen vermerkt sind.
Der Server liegt auf einer 3 Wege Firewall (shorewall)
Zitat von @terminator:
statt auf dem Gateway dem DHCP Server statische Routen einzutragen, die er dann (erfolglos) einem Client übermittelt, soll ich auf OS Ebene die Route hinzufügen?
Ein Client würde also per Default Gateway am Router / Gateway ankommen, dort für einen spezifischen Zielbereich die statische Route erhalten und zu einem anderen Router weitergeschickt?
statt auf dem Gateway dem DHCP Server statische Routen einzutragen, die er dann (erfolglos) einem Client übermittelt, soll ich auf OS Ebene die Route hinzufügen?
Ein Client würde also per Default Gateway am Router / Gateway ankommen, dort für einen spezifischen Zielbereich die statische Route erhalten und zu einem anderen Router weitergeschickt?
Nein, die statische Router wird nciht per dhcp verteilt!
- Der Client schickt das Paket an sein default gateway,
- Der schickt das Paket anhand seiner routingtabelle an das Ziel weiter, wenn das anhand der statischen Route ein anderes ist als das WAN-Interface, dann halt dorthin.
- ggf schickt der noch ein icmp-redirect an den Client, damit der in Zukunft weiß, wo er die nachfolgenden Pakete hinschicken soll. Allerdings wird in den meisten netzen ICMP-Redirekt blockiert, weil man damit unsinn treiben kann.
lks
PS: Du solltest Dich ein wenig mit den Grundlagen des IP-Routing beschäftigen.
Zitat von @terminator:
Mir wäre dann aber auch nicht klar, warum die Windows Clients die Route zur DMZ finden.
Deswegen gibt es ja die Firewall, die sagt du darfst in ein bestimmtes Netz oder nicht. Das lässt sich auf unterschiedlichste Weise festlegen, anhand von Source-IP,MAC, etc. pp.Mir wäre dann aber auch nicht klar, warum die Windows Clients die Route zur DMZ finden.
Wie und über welche Geräte deine Androiden ins Netz kommen hast du uns auch noch nicht verraten.
Und zum Thema Grundlagen: Die erarbeitet man sich nicht in einem Admin-Forum sondern liest sie sich erst einmal an!
Ich setz mich ja auch nicht ohne Führerschein in ein Taxi und kutschiere Leute durch die Gegend.
Seit der Abschaltung der statischen Routen kommt ein Windows Client im LAN nicht mehr in die DMZ.
Ist ja auch korrekt so, ohne Route kein Weg zum Netz und das DefGW fragt seinerseits sein DefGW also das ProviderGW.In welchem Grundlagenwerk finde ich bspw. Aussagen wie "statische Routen per DHCP" werden nur in Ausnahmefällen angelegt?
Wenn du das Kapitel Routing durchhast erledigt sich die Frage von alleine .Zitat von @terminator:
Ich habe die statische Route Option zur DMZ (segment2) im DHCP Server abgeschaltet. Der Router selbst hat wie von dir empfohlen die Route in die DMZ per ip rout add erhalten.
Gut hattest du leider nicht erwähnt.Zitat von @132692:
Kann es sein, dass wir aneinander vorbeireden?Ich habe die statische Route Option zur DMZ (segment2) im DHCP Server abgeschaltet. Der Router selbst hat wie von dir empfohlen die Route in die DMZ per ip rout add erhalten.
Wenn also irgendein Client mit einer Zieladresse im Segment 2 ankommt, sollte ihm da vom Gateway geholfen werden. Das wurde doch von verschiedener Seite hier so dargestellt.
Richtig.Und ja, wenn lesen allein so erfolgreich wäre und alles wie im Lehrbuch, wundert es mich, dass es all diese Foren gibt.
Es gibt halt wie überall Leute die sich dahinter knien und es auf eigene Faust lernen und lösen, und die die es sich leicht machen und Foren für sich arbeiten lassen Aber lassen wir das bringt eh nichts.
Da wird einfach dein GW oder deine Androiden fehlerhaft konfiguriert sein.
Setzt du also mal schnell eine PFSense auf und du siehst was Sache ist. Wir können hier leider mit den dürftigen Infos nicht viel erreichen, wer weiß was du wo konfiguriert hast
Ohne vernünftige Zeichnung zum Netzaufbau etc.
Grundlegend muss man aber auch sagen das der Weg statische Routen an Endgeräte zu propagieren immer der Falsche ist und nur eine Notlösung sein sollte.
Endgeräte sollen niemals selber routen sondern das sollte immer die Netzwerk Infrastruktur machen und nur diese.
Abgesehen von dem o.a. Firewall Problem wäre dann eine einfache statische Route an der .246er Firewall ala:
Zielnetz: <dmz_netzwerk>, Maske: <dmz_netzmaske>, Gateway: 192.168.1.254
IP technisch immer der bessere Weg und auch die einfachere Lösung gewesen.
Natürlich sollte man dann noch lokal ICMP Redirects (Typ 5) an der Firewall erlauben für das lokale LAN und diesen lokalen Traffic vom Firewalling ausnehmen.
Die FW schickt dann ein ICMP Redirect an die Endgeräte Clients die dann den .245er Router direkt kontaktieren ohne überflüssigen Umweg über die .246.
Das wäre netztechnisch der bessere Weg.
Aber egal...Hauptsache es rennt jetzt.
Endgeräte sollen niemals selber routen sondern das sollte immer die Netzwerk Infrastruktur machen und nur diese.
Abgesehen von dem o.a. Firewall Problem wäre dann eine einfache statische Route an der .246er Firewall ala:
Zielnetz: <dmz_netzwerk>, Maske: <dmz_netzmaske>, Gateway: 192.168.1.254
IP technisch immer der bessere Weg und auch die einfachere Lösung gewesen.
Natürlich sollte man dann noch lokal ICMP Redirects (Typ 5) an der Firewall erlauben für das lokale LAN und diesen lokalen Traffic vom Firewalling ausnehmen.
Die FW schickt dann ein ICMP Redirect an die Endgeräte Clients die dann den .245er Router direkt kontaktieren ohne überflüssigen Umweg über die .246.
Das wäre netztechnisch der bessere Weg.
Aber egal...Hauptsache es rennt jetzt.