dnsmasq über mehrer Netze (AVM VPN)

JanGerrit

Neuer User
Mitglied seit
24 Jan 2006
Beiträge
110
Punkte für Reaktionen
0
Punkte
16
Hallo Zusammen,

es gibt ja bereits einige Threads zu dem Thema, in denen abgehandelt wird wie man dnsmasq für bestimmte Domains einen zweiten dns Server mitteilt. Irgendwo scheine ich jedoch noch einen Denkfehler zu haben.

Szenario:
Code:
Box 1                    Box 2
domain=d1                domain=d2
ip: 192.168.101.1        ip: 192.168.102.1
Über /etc/hosts werden feste IPs vergeben. Die Einträge der hosts sehen im freetz-webinf wie folgt aus:
Code:
Box 1:
192.168.101.1 * * fritz.d1
192.168.101.150 01:1A:19:EA:6B:11 * rechner1 rechner1.d1
192.168.101.120 01:AA:15:AA:A2:21 * rechner2 rechner2.d1

Box 2:
192.168.102.110 01:AB:15:EA:E2:E1 * rechner3 rechner3.d2
192.168.102.130 01:AA:15:AA:A2:21 * rechner2 rechner2.d2

Um nun aus Netz d1 auch die Rechner in Netz d2 anzusprechen habe ich als erstes versuch als Option "-S /d2/192.168.102.1 -S /102.168.192.in-addr.arpa/192.168.102.1" zu übergeben, leider ohne Erfolg. Sowohl ein ping auf rechner3.d2 noch ein nslookup auf den Namen oder die IP klappt.
Daraufhin habe ich die Datei /tmp/flash/dnsmasq_conf wie folgt angepasst und "modsave flash" ausgeführt.
Code:
#!/bin/sh

cat << EOF
no-poll
domain-needed
localise-queries
no-negcache
domain=d1
expand-hosts
server=/d1/fritz.box/101.168.192.in-addr.arpa/
server=/d2/102.168.192.in-addr.arpa/192.168.102.1
EOF
if [ "$DNSMASQ_DHCP" = "yes" ]; then
        echo "$DNSMASQ_DHCP_RANGE" | grep -v "^#" | while read -r range; 
...
...
...
Ein ping auf Namen im Netz d2 ist immer noch nicht möglich und ich habe leider keine Idee mehr warum. Für eure Hilfe bin ich sehr dankbar.

Edit:
Hier noch ein paar Ausgaben eines nslookup über einen Linux Client im Netz d1.
Code:
user@rechner1:~$ [B]nslookup rechner3.d2 192.168.102.1[/B]
Server:         192.168.102.1
Address:        192.168.102.1#53
Name:   rechner3.d2
Address: 192.168.102.150

user@rechner1:~$ [B]nslookup rechner3.d2[/B]
;; connection timed out; no servers could be reached

user@rechner1:~$ [B]nslookup rechner1.d1[/B]
Server:         192.168.101.1
Address:        192.168.101.1#53
Name:   rechner1.d1
Address: 192.168.101.100

Viele Grüße, Jan Gerrit
 
Zuletzt bearbeitet:
Update:
Das Problem ist, dass sich die Boxen über das AVM VPN nicht direkt erreichen können. Meldet man sich beispielsweise auf Box1 (192.168.101.1) per Telnet an, kann man Box2 nicht über ihre IP 192.168.102.1 erreichen. Auch erreicht man keinen anderen Rechner im entfernten Netz 192.168.102.0/24.

Viele Grüße, Jan Gerrit
 
Zuletzt bearbeitet:
Hallo Jan,

was passiert denn, wenn du komplett in ein Class-B Netz wechselst, also überall als Subnetz-Maske die 255.255.0.0 eingibst? :noidea:

Joe
 
Hallo Joe,

ich glaube dann streikt die standard Config vom AVM VPN, soweit ich den Aufbau nachvollzogen habe bridged die Fritzbox die Netze nicht. Aber ich möchte auch garnicht ein einziges Netz, dabei kämen sich nur andere Dienste in die Quere, wie z.B. der DHCP. Bei der Realisierung in einem großen Subnetz entstehen auch weitere Probleme, die Netzwerkverbindung muss dauerhaft bestehen, ein routing wird schwer....
Es muss doch eine Möglichkeit bestehen von Box1 aus direkt Box2 anzusprechen, von einem Client an Box1 kann ich ja auch die Box2 ansprechen.

Viele Grüße, Jan Gerrit
 
ich glaube dann streikt die standard Config vom AVM VPN, soweit ich den Aufbau nachvollzogen habe bridged die Fritzbox die Netze nicht.

Nein. IPsec macht ohne Erweiterungen nur IP-Tunnel.

Aber ich möchte auch garnicht ein einziges Netz, ....
Es muss doch eine Möglichkeit bestehen von Box1 aus direkt Box2 anzusprechen, von einem Client an Box1 kann ich ja auch die Box2 ansprechen.

Als freetz-Nutzer rate ich dir: nutze OpenVPN im Tunnelmodus, damit sollte es gehen.

Gruß,
Mathias
 
Ja, mit dem Gedanken OpenVPN einzusetzten habe ich auch gespielt. Aber es müsste ja auch mit der AVM VPN Lösung funktionieren.
Was aber noch nicht ganz in meinen Kopf will ist die Tatsache, dass ich von einem Client in Netz 2 die Box 1 erreiche, von der Box 2 direkt jedoch nicht? Ich habe überlegt, ob es vielleicht hilft eine Virtuelle IP in der vpn-config einzutragen und habe mit den folgenden Parametern ein bisschen herumgespielt, leider werden diese aber auf den AVM Seiten nicht näher erläutert.
Code:
localip = 0.0.0.0;
local_virtualip = 0.0.0.0;    # Wenn auf der Box der gegenseite eine
                              # remote_virtualip gesetzt ist muss diese hier her?

remoteip = 0.0.0.0;           # IP der Gegenstelle, z.B. ip von name.dyndns.org?

remote_virtualip = 0.0.0.0;   # Könnte man hier nicht eine Virtuelle IP
                              # für die Gegenstelle eintragen, damit über
                              # diese die entfernte Box erreichbar ist?
.
Muss man für die Virtuellen IPs ein neues Netz wählen, oder könnte ich als Virtuelle IP auch die tatsächliche IP der Box eintragen?

Viele Grüße, Jan Gerrit
 
Was aber noch nicht ganz in meinen Kopf will ist die Tatsache, dass ich von einem Client in Netz 2 die Box 1 erreiche, von der Box 2 direkt jedoch nicht?

Hört sich nach Problemen mit dem Paketfilter/Firewall an.
Versuche mal die Fernwartung auf einer Box einzurichten und diese Box per https://<interne ip-adresse>/ aus dem anderen Netz zu erreichen (unabhängig vom erfolreichen Ping).

Ich habe überlegt, ob es vielleicht hilft eine Virtuelle IP in der vpn-config einzutragen und habe mit den folgenden Parametern ein bisschen herumgespielt, leider werden diese aber auf den AVM Seiten nicht näher erläutert.

Das Konzept mit den "Virtuellen IP-Adressen" ist mir nicht klar.

Nur noch mal zur Klarstellung:
Du hast mit AVM-VPN eine Verbindung zwischen zwei FritzBoxen hergestellt?

Es wäre interessant zu wissen, wie die Security Policies auf den Boxen aussehen - ich kann dir aber nicht sagen, wie man das bei der AVM-Implementierung herausfindet.

Gruß,
Mathias
 
Die AVM Fernwartung funktioniert nicht, da es hierbei ein Problem mit libcrypt.so besteht.
Code:
Jul 26 09:48:20 ctlmgr[446]: 09:48:20(1) [Segmentation fault] /usr/bin/avm/ctlmgr(446) CRASHED at MD5_Update+0xa4 (/usr/lib/libcrypto.so.0.9.8 at 00036aa8) accessing _gp_disp+0x2b76d500 (/usr/lib/libcrypto.so.0.9.8 at 2b884ed0)

Die Security Policies werden denke ich über den Parameter accesslist gesetzt.

Also auf Box 1:
accesslist = "permit ip any 192.168.102.0 255.255.255.0";
und auf Box 2:
accesslist = "permit ip any 192.168.101.0 255.255.255.0";

Bezüglich der Virtuellen IPs: Ich dachte dass wenn ich diese in der VPN-Boxconfig eintrage, ich die IPs ähnlich nutzen könnte wie die IPs der tun devices bei openvpn.

Gruß, Jan Gerrit
 
Die AVM Fernwartung funktioniert nicht, da es hierbei ein Problem mit libcrypt.so besteht.

Schade.


Die Security Policies werden denke ich über den Parameter accesslist gesetzt.

Also auf Box 1:
accesslist = "permit ip any 192.168.102.0 255.255.255.0";
und auf Box 2:
accesslist = "permit ip any 192.168.101.0 255.255.255.0";

Sieht eher nach Paketfilter-Regel aus! (SPs enthalten Quelle und Ziel)

Bezüglich der Virtuellen IPs: Ich dachte dass wenn ich diese in der VPN-Boxconfig eintrage, ich die IPs ähnlich nutzen könnte wie die IPs der tun devices bei openvpn.

Soweit ich das im Forum gesehen habe, sind es eher IP-Aliases (also zusätzliche IP-Adresse auf dem "lan"-Device. Von der Verwendung ist das aber wohl eher egal, wenn die Paketfilter-Regeln nicht Device-spezifisch sind.

Es wäre interessant, wenn du openvpn schon auf deiner Box hast, ob es prinzipiell mit folgender Minimal-Konfig funktioniert:

Code:
$ openvpn --dev tun --ifconfig 192.168.0.1 192.168.0.2 --route 192.168.102.0 255.255.255.0
auf der Box mit dem lokalen Netzwerk 192.168.101.0/24 und
Code:
$ openvpn --dev tun --ifconfig 192.168.0.2 192.168.0.1 --route 192.168.101.0 255.255.255.0 --remote andere.box.dyndns.org

Vorher muss natürlich noch der Zugriff auf Port 1194 erlaubt werden. (Weiterleitung für Port UDP/1194 auf irgendeinen Rechner im LAN per AVM-Webif eintragen und dann mit nvi in der ar7.cfg auf 0.0.0.0:1194 anpassen, reboot.)

Beim Start von openvpn muss nach kurzer Zeit ein "Initialization Sequence Completed" erscheinen. Dann wäre es interessant, ob es möglich das jeweils andere Netzwerk per ping, ... zu erreichen.

Falls es auf Grund von Paketfilter-Einstellungen nicht geht, kann man noch versuchen OpenVPN im Layer-2-Modus (--dev tap) zu betreiben und das resultierende Gerät (z.B. tap0) mit brctl an die lan-bridge anhängen.

Achtung: Bei dieser Minimalkonfig findet keine Verschlüsselung statt!
 
OpenVPN habe ich schon seit längerem auf den Boxen laufen, um mich Notfalls mit meinem Rechner verbinden zu können. Die Netze der Boxen sind bis jetzt allerdings nicht darüber verbunden. Ich habe es gerade aber mal nach deinem Vorschlag getestet. Über OpenVPN mit tun klappt die Verbindung zwischen den Boxen (auch ein ping direkt von Box zu Box).

Gruß, Jan Gerrit
 
Über OpenVPN mit tun klappt die Verbindung zwischen den Boxen (auch ein ping direkt von Box zu Box).

Gut. Damit scheint ein (fehlerhafter) Paketfilter schon mal nicht die Ursache der nicht möglichen Verbindungen beim AVM-VPN zu sein.

Bleibt die Frage, warum man von einer Box nicht auf die andere durch den Tunnel zugreifen kann?

Hast du analog zum Port 1194/udp auch den Port 53/udp auf den Boxen freigegeben? (also bezüglich des AVM-VPN-Szenarios)

Gruß,
Mathias
 
Hast du analog zum Port 1194/udp auch den Port 53/udp auf den Boxen freigegeben?

Nein, wieso? Dann würde ich den DNS Server ja ins Internet verfügbar machen.
Ich habe heute Nachmittag noch ein bissel mit der AVM Config herumgespielt, leider ohne Erfolg. Wenn ich mich recht erinnere gibt es beim AVM VPN Probleme mit UDP Verbindungen (verbindungslos ;)). Vielleicht liegt es daran. Naja, ich habe jetzt erstmal auf OpenVPN zurückgegriffen, da ich mich die nächsten Tage nicht so intensiv damit auseinander setzten kann.
Aber falls du noch eine Idee hast, immer her damit. Schon allein um die Neugier zu befrieden möchte ich wissen warum es nicht klappt.

Danke und Grüße, Jan Gerrit
 
Nein, wieso? Dann würde ich den DNS Server ja ins Internet verfügbar machen.
Ich habe heute Nachmittag noch ein bissel mit der AVM Config herumgespielt, leider ohne Erfolg. Wenn ich mich recht erinnere gibt es beim AVM VPN Probleme mit UDP Verbindungen (verbindungslos ;)).

Sofern AVM sein VPN nach IPsec-RFCs korrekt implementiert hat, sollte das kein Problem sein - ICMP (wird für "ping" eingesetzt) ist auch verbindungslos).

Bei IPsec wird an Hand der SP-Regeln geprüft ob für ein IP-Paket (TCP, UDP, ICMP, was auch immer) eine Security Association (SA) anzuwenden ist oder nicht. Falls doch, und die Verbindungsparameter (Schlüssel, Gültigkeit, ...) sind noch nicht ausgehandelt worden, wird IKE angeworfen um eine solche SA auszuhandeln, welche dann bis zum Ablauf der Gültigkeit oder Löschung benutzt wird.

Das mit der Paketfilter-Freigabe war wohl 'nen kurzzeitiger Denkfehler von mir :-(

BTW: Hattest du dnsmasq mit Parameter "-q" gestartet, um zu sehen ob die Hin- oder Rückrichtung durchs VPN nicht geht?

Gruß,
Mathias
 
Hier mal das dnsmasq Log, der Forward wird ausgeführt aber es kommt keine Antwort...

Code:
dnsmasq: started, version 2.41 cachesize 150
dnsmasq: compile time options: no-IPv6 GNU-getopt no-ISC-leasefile no-DBus no-I18N TFTP
dnsmasq: DHCP, IP range 192.168.101.99 -- 192.168.101.200, lease time 12h
dnsmasq: using nameserver 192.168.102.1#53 for domain 102.168.192.in-addr.arpa
dnsmasq: using nameserver 192.168.102.1#53 for domain bb
dnsmasq: using local addresses only for domain 101.168.192.in-addr.arpa
dnsmasq: using local addresses only for domain fritz.box
dnsmasq: using local addresses only for domain netz1
dnsmasq: read /etc/hosts - 9 addresses
dnsmasq: read /etc/ethers - 6 addresses
dnsmasq: using nameserver 192.168.180.2#53
dnsmasq: using nameserver 192.168.180.1#53
dnsmasq: using nameserver 192.168.102.1#53 for domain 102.168.192.in-addr.arpa
dnsmasq: using nameserver 192.168.102.1#53 for domain bb
dnsmasq: using local addresses only for domain 101.168.192.in-addr.arpa
dnsmasq: using local addresses only for domain fritz.box
dnsmasq: using local addresses only for domain netz1
dnsmasq: query[A] nua.netz2 from 192.168.101.101
dnsmasq: forwarded nua.netz2 to 192.168.102.1
dnsmasq: query[A] nua.netz2 from 192.168.101.101
dnsmasq: forwarded nua.netz2 to 192.168.102.1
dnsmasq: query[A] nua.netz2 from 192.168.101.101
dnsmasq: forwarded nua.netz2 to 192.168.102.1

Viele Grüße, Jan Gerrit
 
Jaja, es wird später ;) im Log der zweiten Box taucht nichts auf.

Viele Grüße, Jan Gerrit
 
Hallo JanGerritt,

hattest Du damals hierzu eine Lösung gefunden? Stehe momentan vor dem gleichen beziehungsweise einem ähnlichen Problem.


Viele Grüße,
Sascha
 
Hier mal das dnsmasq Log, der Forward wird ausgeführt aber es kommt keine Antwort...

Aaalso, ich glaube ich hab da jetzt was:
-S /<domain>/[email protected] liefert bei mir den gewünschten Effekt, hierbei wird 192.168.2.1, also die interne IP des Router, als Output-Interface für den Request gesetzt, da der Tunnel zwischen 10.0.1.0/24 und 192.168.2.0/24 aufgebaut wird, läuft der Request dann durch den Tunnel und kommt auch entsprechend auf der Gegenseite an... :cool:
 
Zuletzt bearbeitet:

Zurzeit aktive Besucher

Statistik des Forums

Themen
244,958
Beiträge
2,221,629
Mitglieder
371,725
Neuestes Mitglied
rumus001genuine
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.