Am un Raspberry Pi care este conectat la un router wireless cu wlan0 și există un server care este conectat la eth0. Ambele conexiuni funcționează bine.
Eth0 dintre Pi și server este configurat static, astfel încât eth0-ul lui Pi să aibă IP 192.168.3.23/24 și serverul să aibă IP 192.168.3.200/24. Wlan0 al lui Pi are IP 192.168.1.131/24.
Acum, încerc să fac redirecționare, astfel încât, atunci când conectez portul 88 al lui Pi, să redirecționeze către serverul din spatele lui. Am redirecționarea activată conform sysctl -a | grep înainte
:
net.ipv4.conf.all.bc_forwarding = 0
net.ipv4.conf.all.forwarding = 1
net.ipv4.conf.all.mc_forwarding = 0
net.ipv4.conf.default.bc_forwarding = 0
net.ipv4.conf.default.forwarding = 1
net.ipv4.conf.default.mc_forwarding = 0
net.ipv4.conf.eth0.bc_forwarding = 0
net.ipv4.conf.eth0.forwarding = 1
net.ipv4.conf.eth0.mc_forwarding = 0
net.ipv4.conf.lo.bc_forwarding = 0
net.ipv4.conf.lo.forwarding = 1
net.ipv4.conf.lo.mc_forwarding = 0
net.ipv4.conf.wlan0.bc_forwarding = 0
net.ipv4.conf.wlan0.forwarding = 1
net.ipv4.conf.wlan0.mc_forwarding = 0
net.ipv4.ip_forward = 1
net.ipv4.ip_forward_update_priority = 1
net.ipv4.ip_forward_use_pmtu = 0
De asemenea, am nftables
configurat astfel:
table ip nat {
preroutare în lanț {
tip nat hook prerouting priority dstnat; acceptarea politicii;
tcp dport { 88, 443 } dnat la 192.168.3.200
}
postrouting în lanț {
tip nat hook postrouting priority srcnat; acceptarea politicii;
}
}
AFAIK ar trebui să redirecționeze porturile TCP 88 și 443 către server la 192.168.3.200, dar nu se întâmplă nimic. Daca eu fac curl http://192.168.1.131:88
, cererea se blochează pe termen nelimitat. Totuși, regula nftables face ceva, pentru că dacă șterg setul de reguli, cererile sunt refuzate imediat.
Oare imi scapa ceva aici?