Temat: Porblem z iptables
Mam problem z dostosowaniem reguł iptables tak by pozwalały na prawidłowe działanie wireguarda.
Klient łączy się z serwerem, następuje wymiana kluczy ale ruch nie jest przekazywany do klienta, dlatego podejrzewam, że to wina iptables.
Routing wygląda tak:
# ip route
default via 192.168.51.2 dev ppp0 metric 1
10.0.1.0/24 dev wg1 proto kernel scope link src 10.0.1.1
127.0.0.0/8 dev lo scope link
192.168.2.0/24 dev br0 proto kernel scope link src 192.168.2.1
192.168.51.2 dev ppp0 proto kernel scope link src MOJ.ZEWNETRZNY.IP.WAN Dopisane reguły:
iptables -A FORWARD -i wg1 -j ACCEPT
iptables -A FORWARD -o wg1 -j ACCEPT
iptables -A INPUT -i wg1 -j ACCEPT
iptables -t nat -A POSTROUTING -o br0 -j MASQUERADEPróbowałem też SNAT --to-source 192.168.2.1 zamiast MASQUERADE, ale bez rezultatu. Używam jeszcze reguł do DNScrypt:
iptables -t nat -I PREROUTING -i br0 -p udp --dport 53 -j DNAT --to $ (nvram get lan_ipaddr)
iptables -t nat -I PREROUTING -i br0 -p tcp --dport 53 -j DNAT --to $ (nvram get lan_ipaddr)Serwer wireguarda wypluwa naprzemiennie takie błędy:
Jun 8 10:17:40 kernel: wireguard: wg1: Failed to give packet to userspace from peer 3 (8fed7144)
Jun 8 10:17:41 kernel: wireguard: wg1: Packet has unallowed src IP (8fc37ca8) from peer 3 (8fed7144)Klient ma adres 10.0.1.2. Klient przesyła żądania do serwera bo śledząc na nim interfejs wg1 przez tcpdump je widzę.
# tcpdump -vv -i wg1
tcpdump: listening on wg1, link-type RAW (Raw IP), capture size 262144 bytes
10.0.1.2.8499 > Debian.domain: [udp sum ok] 5207+ AAAA? semanticlocation-pa.googleapis.com. (52)
10:21:15.921493 IP (tos 0x0, ttl 64, id 61100, offset 0, flags [DF], proto UDP (17), length 63)
10.0.1.2.22059 > dns.google.domain: [udp sum ok] 5207+ AAAA? semanticlocation-pa.googleapis.com. (52)
10:21:23.989514 IP (tos 0x0, ttl 64, id 55767, offset 0, flags [DF], proto UDP (17), length 80)
10.0.1.2.8499 > Debian.domain: [udp sum ok] 5207+ AAAA? semanticlocation-pa.googleapis.com. (52)
10:21:25.919334 IP (tos 0x0, ttl 64, id 61773, offset 0, flags [DF], proto UDP (17), length 63)
10.0.1.2.22059 > dns.google.domain: [udp sum ok] 5207+ AAAA? semanticlocation-pa.googleapis.com. (52)
10:21:30.942374 IP (tos 0x0, ttl 64, id 56354, offset 0, flags [DF], proto UDP (17), length 63)Ping 10.0.1.1 oraz 10.0.1.2 poprawny.