Hallo
ich habe folgendes Verständnisproblem:
Ich benutze für meinen auf Ubuntu basierender Server dnsmasq (ausschließlich für DNS, DHCP mache ich woanders). Dieser lauscht lokal auf dem Server auf 127.0.0.1.
Mit der IPTables Regel :
$FW -I PREROUTING -t nat -p tcp --src $zone_lan --dport 53 -j DNAT --to 127.0.0.1:53
$FW -I PREROUTING -t nat -p udp --src $zone_lan --dport 53 -j DNAT --to 127.0.0.1:53
$FW -A INPUT -p tcp --dport 53 -d 127.0.0.1 -j ACCEPT
$FW -A INPUT -p udp --dport 53 -d 127.0.0.1 -j ACCEPT
$FW -A OUTPUT -p tcp --sport 53 -s 127.0.0.1 -j ACCEPT
$FW -A OUTPUT -p udp --sport 53 -s 127.0.0.1 -j ACCEPT
----------------
netstat | dnsmasq:
tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 855/dnsmasq
udp 0 0 127.0.0.1:53 0.0.0.0:* 855/dnsmasq
... möchte ich erreichen, das die Anfragen der Clients von innerhalb meines Netzwerks auf 127.0.0.1:53 umgelenkt werden.
Das funktioniert nicht, Anfragen kommen nie an. (zu sehen beispielsweise in den Logs von dnsmasq)
Wenn ich dnsmasq auf der nach intern gerichteten Netzwerkkarte eth0 lauschen lasse, haut das natürlich hin. Insofern sollte dnsmasq richtig konfiguriert sein.
Mein Frage: Warum kommen die Anfragen nie an, wenn ich ausschließlich auf 127.0.0.1 lauschen lasse?
Ist das ne Eigenart von dnsmasq, iptables oder habe ich einen Denkfehler in der Rule?
Es geht mir hier vorrangig um iptables. Durch prerouting nat sollte das Ziel doch umgeschrieben werden, wirds aber nicht (richtig). Woran liegt das?
Falls ihr noch Infos braucht, reiche ich die gerne nach.
Grüße, Daniel
ich habe folgendes Verständnisproblem:
Ich benutze für meinen auf Ubuntu basierender Server dnsmasq (ausschließlich für DNS, DHCP mache ich woanders). Dieser lauscht lokal auf dem Server auf 127.0.0.1.
Mit der IPTables Regel :
$FW -I PREROUTING -t nat -p tcp --src $zone_lan --dport 53 -j DNAT --to 127.0.0.1:53
$FW -I PREROUTING -t nat -p udp --src $zone_lan --dport 53 -j DNAT --to 127.0.0.1:53
$FW -A INPUT -p tcp --dport 53 -d 127.0.0.1 -j ACCEPT
$FW -A INPUT -p udp --dport 53 -d 127.0.0.1 -j ACCEPT
$FW -A OUTPUT -p tcp --sport 53 -s 127.0.0.1 -j ACCEPT
$FW -A OUTPUT -p udp --sport 53 -s 127.0.0.1 -j ACCEPT
----------------
netstat | dnsmasq:
tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 855/dnsmasq
udp 0 0 127.0.0.1:53 0.0.0.0:* 855/dnsmasq
... möchte ich erreichen, das die Anfragen der Clients von innerhalb meines Netzwerks auf 127.0.0.1:53 umgelenkt werden.
Das funktioniert nicht, Anfragen kommen nie an. (zu sehen beispielsweise in den Logs von dnsmasq)
Wenn ich dnsmasq auf der nach intern gerichteten Netzwerkkarte eth0 lauschen lasse, haut das natürlich hin. Insofern sollte dnsmasq richtig konfiguriert sein.
Mein Frage: Warum kommen die Anfragen nie an, wenn ich ausschließlich auf 127.0.0.1 lauschen lasse?
Ist das ne Eigenart von dnsmasq, iptables oder habe ich einen Denkfehler in der Rule?
Es geht mir hier vorrangig um iptables. Durch prerouting nat sollte das Ziel doch umgeschrieben werden, wirds aber nicht (richtig). Woran liegt das?
Falls ihr noch Infos braucht, reiche ich die gerne nach.
Grüße, Daniel
Last edited by a moderator: