Я использую собственный сервер протокола внутри пространства имен. Он прослушивает какой-то порт только на локальном хосте. Сетевое пространство имен содержит виртуальное устройство Ethernet с IP 192.168.0.2. Я хочу перенаправить входящие пакеты на 192.168.0.2 на свой пользовательский сервер. Я использую следующую конфигурацию iptables в своем пространстве имен в сети:
# Filter settings. We are isolated virtual network, so we allow all
*filter
:INPUT ACCEPT
:FORWARD ACCEPT
:OUTPUT ACCEPT
COMMIT
# NAT settings
*nat
:PREROUTING ACCEPT
:INPUT ACCEPT
:OUTPUT ACCEPT
:POSTROUTING ACCEPT
# Required to forward
-A POSTROUTING -j MASQUERADE
# Forward external IP to custom server
-A PREROUTING -d 192.168.0.2 -p tcp -m tcp --dport 1080:1095 -j DNAT --to-destination 127.0.0.1:1080-1095
COMMIT
Я задал следующие переменные среды:
net.ipv4.ip_forward=1
net.ipv4.conf.veth1.route_localnet=1
net.ipv4.conf.veth1.log_martians=1
Переадресация не работает по какой-либо причине.
Кто-нибудь знает, как пересылать входящие пакеты veth в lo в пространстве имен в сети?