Router einrichten auf einem API board

Gemeinsam ins Internet mit Firewall und Proxy.
Antworten
waldmeister68
Beiträge: 31
Registriert: 16.01.2015 02:45:42

Router einrichten auf einem API board

Beitrag von waldmeister68 » 11.06.2015 00:58:37

Hallo,

ich möchte mein API board als Router einrichten. Ich würde mich freuen, wenn mir jemand hilft und mir seine Konfiguration miteilt.
Ich möchte dabei dnsmasq als DNS Server und DHCP server einrichten.
Mein Board hat 3 LAN Anschlüsse und WLAN über einen TP-Link USB WLAN adapter.
Das eth0 soll dabei zum Internet Router angeschlossen werden und eth0 soll als dhcp client arbeiten (so ist es aktuell schon bei mir konfiguriert)
eth1 und eth2 sowie das wlan0 sollen nun mit dem dhcp server dnsmasq die ip adressen mitgeteilt bekommen und auch den dns server, der dns server soll auf dem api board laufen und wiederum auf den internet router als dns server verweisen.
Macht es Sinn, jeweils eigene VLANs mit eth0, eth1 und wlan0 einzurichten?
Wie sieht die dnsmasq konfiguration dazu aus und die interface datei?
Im moment habe ich über alle interfaces ein bridging konfiguriert.
Würde mich über hilfe freuen.
Grüße

Cae
Beiträge: 6349
Registriert: 17.07.2011 23:36:39
Wohnort: 2130706433

Re: Router einrichten auf einem API board

Beitrag von Cae » 11.06.2015 08:59:45

Soll hinter diesem Router ein unabhaengiges Netz stehen? Oder anders gefragt, soll auf beiden Seiten dasselbe Subnetz verwendet werden? Falls nicht, ist die Bridge verkehrt und du willst Routing einschalten:

Code: Alles auswählen

# sysctl net.ipv4.ip_forward=1
Ggf. sind noch Routen zu setzen und zur Not NAT zu aktivieren.

Soll der DNS-Server wirklich zu den vom DHCP-Server vergebenen IP-Adressen passende Records anbieten oder kann das unabhaengig sein? Letzteres ist simpel, er lauscht einfach auf den internen Interfaces und hat extern entsprechende Forwarders eingetragen.

Fuer VLANs nach 802.1q sehe ich keinen Anwendungszweck, die brauchst du eigentlich nur, wenn du nicht genug physikalische Interfaces hast.

Gruss Cae
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.

—Bruce Schneier

waldmeister68
Beiträge: 31
Registriert: 16.01.2015 02:45:42

Re: Router einrichten auf einem API board

Beitrag von waldmeister68 » 11.06.2015 10:30:22

Ja, hinter dem Router soll ein unabhängiges Netz stehen. Eigentlich möchte ich eine router firewall kombi nachbauen, wie .z.b. pfsense oder ipfire.
Konkret in meinem Beispiel heißt das, dass ich bereits einen DSL Router zum Internet nutze, wie wohl die meisten, und dahinter den linux server als gateway schalten will. Bei mir ist die fritzbox im Einsatz.
An diese fritzbox will ich nun meinen linux router als firewall anschließen.
Die Frage zum DNS Server habe ich nicht ganz verstanden, aber der DNS Server sollte schon im gleichen IP Adress range sein und auch alle angeschlossenen Geräte mit deren hostnamen auflössen können, bzw. mittels forwarder auf die fritzbox die anderen Adressen beziehen.

waldmeister68
Beiträge: 31
Registriert: 16.01.2015 02:45:42

Re: Router einrichten auf einem API board

Beitrag von waldmeister68 » 15.06.2015 00:09:38

weiß keiner Rat?

ok, zumindest den DNS Server habe ich zum laufen gebracht mit dnsmasq.
Den DHCP server aber leider nicht.

Folgende Einstellungen habe ich in die dnsmasq.conf vorgenommen:

except-interface=eth0

dhcp-range=eth1,192.168.195.50,192.168.195.199,24h
dhcp-range=eth2,192.168.196.50,192.168.196.199,24h
dhcp-range=wlan0,192.168.197.50,192.168.197.199,24h

Meine interface datei sieht so aus:

# Used by ifup(8) and ifdown(8). See the interfaces(5) manpage or
# /usr/share/doc/ifupdown/examples for more information.

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp

iface eth1 inet static
address 192.168.195.200
netmask 255.255.255.0
gateway 192.168.195.1

iface eth2 inet static
address 192.168.196.201
netmask 255.255.255.0
gateway 192.168.196.1

auto wlan0
iface wlan0 inet manual
hostapd /etc/hostapd/hostapd.wlan0.conf


leider funktioniert dhcp gar nicht, dem client wird keine IP Adresse zugewiesen. Was mache ich falsch?

Benutzeravatar
GregorS
Beiträge: 2518
Registriert: 05.06.2008 09:36:37
Wohnort: Freiburg
Kontaktdaten:

Re: Router einrichten auf einem API board

Beitrag von GregorS » 15.06.2015 02:15:35

waldmeister68 hat geschrieben:weiß keiner Rat?
Moin!

Ich habe den Thread nur quergelesen und beim Versuch, Dein Setup zu skizzieren, aufgegeben.

Vielleicht hilft Dir, was ich in einem anderen Thread geschrieben habe. Guck mal bei http://debianforum.de/forum/viewtopic.php?f=37&t=155905 nach dem ersten Posting von mir (das dritte oder vierte). Wenn ich Dich richtig verstehe, möchtest Du im Grunde das Gleiche, jedoch zusätzlich mit DNS und DHCP. DNS läuft bei mir ebenfalls auf dem Pi, jedoch nur als „Forwarder“.

Am besten ist jedenfalls, eins nach dem anderen zu machen. Also erst die Router-Funktionalität zu realisieren, dann DNS, dann DHCP ...

Gruß

Gregor
Wenn man keine Probleme hat, kann man sich welche machen. ("Großes Lötauge", Medizinmann der M3-Hopi [und sog. Maker])

waldmeister68
Beiträge: 31
Registriert: 16.01.2015 02:45:42

Re: Router einrichten auf einem API board

Beitrag von waldmeister68 » 15.06.2015 11:54:48

Hallo,

danke, aber der threat in dem link hilft mir zumindest jetzt noch nicht, denn da geht es um die Firewalleinstellungen.
Das wollte ich erst später angehen, denn zuerst müssen die Clients ja IP Adressen beziehen und auch die Angaben der IP des Gateways bekommen um das routing zu testen.

Benutzeravatar
GregorS
Beiträge: 2518
Registriert: 05.06.2008 09:36:37
Wohnort: Freiburg
Kontaktdaten:

Re: Router einrichten auf einem API board

Beitrag von GregorS » 15.06.2015 12:48:09

waldmeister68 hat geschrieben:... Das wollte ich erst später angehen, denn ...
Du möchtest die Dinge demnach in einer Reihenfolge angehen, die ich für unglücklich halte.

Wie auch immer, ich würde Dir gerne helfen, benötige dafür aber einen besseren Durchblick, wie Dein Hardware-Setup aussieht, also welche Hardware wie miteinander verbunden ist und welche Netze dort konfiguriert sind bzw. werden sollen. Könntest Du das mal skizzieren?

Gruß

Gregor
Wenn man keine Probleme hat, kann man sich welche machen. ("Großes Lötauge", Medizinmann der M3-Hopi [und sog. Maker])

Cae
Beiträge: 6349
Registriert: 17.07.2011 23:36:39
Wohnort: 2130706433

Re: Router einrichten auf einem API board

Beitrag von Cae » 15.06.2015 15:23:16

Oben scheinen mir "auto ethX"-Zeilen fuer eth1 und eth2 zu fehlen, ausserdem ist der Gateway doppelt. Den willst du wahrscheinlich nur auf eth0 haben, welcher aber schon automatisch ueber DHCP bezogen wird. Demnach sind beide Eintraege ueberfluessig. Ausserdem ist die IP bei eth2 inkonsistent, naemlich nicht DHCP-Range + 1, sondern DHCP-Range + 2.

Was sagt das Logging vom dnsmasq? (Imho ist der Standard da relativ unbrauchbar.) Ist der DHCPd-Teil explizit eingeschaltet?

Gruss Cae
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.

—Bruce Schneier

waldmeister68
Beiträge: 31
Registriert: 16.01.2015 02:45:42

Re: Router einrichten auf einem API board

Beitrag von waldmeister68 » 15.06.2015 20:35:15

Hi,

stimmt, der Eintrag "auto eht1" und "auto eth2" hat gefehlt. Das habe ich nun nachgetragen.

Das mit dem Gateway habe ich nicht ganz verstanden. eth0 ist an der fritzbox angeschlossen und bekommt über die fritzbox die IP Adresse und die Gatway Adresse, genau.
Auf eth1 und eth2 will ich mein Homenet konfigurieren mit einem eigenen IP Adressbereich. Dann muss doch die Gateway IP Adresse auch in diesem Netz liegen, oder?
Ein eigenes Logfile von DNSmasq habe ich jetzt nicht gesehen, es wird ins syslog geschrieben, aber DHCP scheint aktiviert zu sein.
Hier der Logfileauszug aus der Syslog:
Jun 12 14:14:42 Box dnsmasq[3831]: started, version 2.62 cachesize 150
Jun 12 14:14:42 Box dnsmasq[3831]: compile time options: IPv6 GNU-getopt DBus i18n IDN DHCP DHCPv6 no-Lua TFTP conntrack
Jun 12 14:14:42 Box dnsmasq-dhcp[3831]: DHCP, IP range 192.168.197.50 -- 192.168.197.199, lease time 1d
Jun 12 14:14:42 Box dnsmasq-dhcp[3831]: DHCP, IP range 192.168.196.50 -- 192.168.196.199, lease time 1d
Jun 12 14:14:42 Box dnsmasq-dhcp[3831]: DHCP, IP range 192.168.195.50 -- 192.168.195.199, lease time 1d
Jun 12 14:14:42 Box dnsmasq[3831]: no servers found in /var/run/dnsmasq/resolv.conf, will retry
Jun 12 14:14:42 Box dnsmasq[3831]: read /etc/hosts - 2 addresses
Jun 12 14:22:39 Box dnsmasq[3831]: reading /var/run/dnsmasq/resolv.conf
Jun 12 14:22:39 Box dnsmasq[3831]: using nameserver 192.168.178.1#53
Jun 12 14:22:39 Box dnsmasq[3831]: ignoring nameserver 127.0.0.1 - local interface
Jun 12 14:22:41 Box dnsmasq[3831]: exiting on receipt of SIGTERM
Jun 12 14:28:11 Box dnsmasq[3984]: started, version 2.62 cachesize 150
Jun 12 14:28:11 Box dnsmasq[3984]: compile time options: IPv6 GNU-getopt DBus i18n IDN DHCP DHCPv6 no-Lua TFTP conntrack
Jun 12 14:28:11 Box dnsmasq-dhcp[3984]: DHCP, IP range 192.168.197.50 -- 192.168.197.199, lease time 1d
Jun 12 14:28:11 Box dnsmasq-dhcp[3984]: DHCP, IP range 192.168.196.50 -- 192.168.196.199, lease time 1d
Jun 12 14:28:11 Box dnsmasq-dhcp[3984]: DHCP, IP range 192.168.195.50 -- 192.168.195.199, lease time 1d
Jun 12 14:28:11 Box dnsmasq[3984]: reading /var/run/dnsmasq/resolv.conf
Jun 12 14:28:11 Box dnsmasq[3984]: using nameserver 192.168.178.1#53
Jun 12 14:28:11 Box dnsmasq[3984]: read /etc/hosts - 2 addresses
Jun 12 14:29:05 Box: reading /var/run/dnsmasq/resolv.conf
Jun 12 14:29:05 Box: using nameserver 192.168.178.1#53

grüße

Cae
Beiträge: 6349
Registriert: 17.07.2011 23:36:39
Wohnort: 2130706433

Re: Router einrichten auf einem API board

Beitrag von Cae » 15.06.2015 22:24:36

waldmeister68 hat geschrieben:Auf eth1 und eth2 will ich mein Homenet konfigurieren mit einem eigenen IP Adressbereich. Dann muss doch die Gateway IP Adresse auch in diesem Netz liegen, oder?
Nein, die Interface-Adresse ist der (Standard-)Gateway fuer andere Clients an diesem Interface. Die Maschine selbst hat bereits einen Standardgateway, naemlich auf eth0 (per DHCP). Der Standardgateway ist immer die Antwort auf die Frage "ich habe keine Route fuer dieses Paket, wohin damit?". Das braucht es logischerweise nur in Richtung Internet [1], da die an eth1 und eth2 (sowie wlan0) anliegenden Netze dem Router selbst bekannt sind.

Das Log sieht eigentlich okay aus, moeglicherweise ist der DNS aber kaputt, weil aus der resolv.conf die bekannten Nameserver auszulesen versucht, bevor der dhclient (von eth0) sie dorthin geschrieben hat.

Gruss Cae

[1] oder generischer: In Richtung des weniger uebersichtlichen Netzes, damit man weniger manuelle Routen setzen muss
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.

—Bruce Schneier

waldmeister68
Beiträge: 31
Registriert: 16.01.2015 02:45:42

Re: Router einrichten auf einem API board

Beitrag von waldmeister68 » 18.06.2015 01:01:11

klasse, danke , indem ich die gatway adresse weggenommen habe funktioniert nun die IP Adress Zuweisung.
Auch DNS wird korrekt zugewiesen und zumindest die Adressauflösung funktioniert.

Meine Interface Datei sieht nun wie folgt aus:

# Used by ifup(8) and ifdown(8). See the interfaces(5) manpage or
# /usr/share/doc/ifupdown/examples for more information.

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp

auto eth1
iface eth1 inet static
address 192.168.195.200
netmask 255.255.255.0

auto eth2
iface eth2 inet static
address 192.168.196.201
netmask 255.255.255.0

auto wlan0
iface wlan0 inet manual
hostapd /etc/hostapd/hostapd.wlan0.conf


Die Abfrage mit
nslookup debian.org localhost
liefert das korrekte Ergebnis.

Jetzt kommt aber eine weitere Frage, soll ich überhaupt verschiedene Adressbereich bei den Interfaces bilden?
Ich denke ich habe dann Verbindungsprobleme wegen der Einschränkung der Broadcasts.
Macht es Sinn ein Bridging über die Heimnetze zu fahren und kommt die ipTables firewall damit überhaupt klar?
Grüße
waldi

waldmeister68
Beiträge: 31
Registriert: 16.01.2015 02:45:42

Re: Router einrichten auf einem API board

Beitrag von waldmeister68 » 22.06.2015 14:03:42

Hi,

ich habe es nun mit einer Bridge in Kombination mit Router eingerichtet und es klappt.
In der dhcpmasq.conf habe ich nur als interface die bridge angegeben:
dhcp-range=br0,192.168.195.50,192.168.195.199,255.255.255.0,24h

Macht das so Sinn?Oder sollte ich besser jedes einzelne Interface getrennt angeben , alles im gleichen Subnetz nur mit verschiedenen Adressbereichen?

Meine Interface Datei sieht dabei so aus:

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp

auto br0
iface br0 inet static
address 192.168.195.200
netmask 255.255.255.0
broadcast 192.168.195.255
bridge_ports eth1 eth2 wlan0

auto eth1
iface eth1 inet manual

auto eth2
iface eth2 inet manual

auto wlan0
iface wlan0 inet manual
hostapd /etc/hostapd/hostapd.wlan0.conf

Das klappt soweit alles gut, auch die Firewall konnte ich entsprechend einstellen, damit es funzt.
Auch hier die Frage, macht das alles Sinn, oder bekomme ich Sicherheitsprobleme mit der Firewall bei diesem Konstrukt?
Grüße

Antworten