Я пытаюсь внести изменения в правило маскарада iptables, но оно не дает ожидаемого эффекта.
Я сделал следующее изменение:
iptables -t nat -D POSTROUTING -s 10.8.0.0/24 -j MASQUERADE
С последующим:
iptables -t nat -I POSTROUTING -s 10.8.0.0/24 -j MASQUERADE --random
Я вижу, что изменение в правилах iptables, используя iptables-save
:
# Generated by iptables-save v1.4.4 on Thu May 10 10:27:50 2018
*filter
:INPUT ACCEPT [236993945:51608900637]
:FORWARD ACCEPT [266469296:64660435215]
:OUTPUT ACCEPT [230114668:58501523623]
COMMIT
# Completed on Thu May 10 10:27:50 2018
# Generated by iptables-save v1.4.4 on Thu May 10 10:27:50 2018
*nat
:PREROUTING ACCEPT [3442611:208366022]
:POSTROUTING ACCEPT [4752:298364]
:OUTPUT ACCEPT [4712:291388]
-A POSTROUTING -s 10.8.0.0/24 -j MASQUERADE --random
COMMIT
# Completed on Thu May 10 10:27:50 2018
Проблема, с которой я столкнулся, заключается в том, что я вижу трафик, исходящий из того же порта источника, другими словами, --random
не вступает в силу. Я проверил это на другом сервере, и он работал нормально.
Как я могу применить эти правила без перезагрузки хоста?
Как проверить, не работает ли он? У вас есть несколько IP-адресов на интерфейсе "WAN"? Вы включили ip_forward?
—
mariaczi
Относится ли трафик от «того же порта источника» к такое же соединение , или у вас есть несколько соединений, получающих назначенный идентичный порт?
—
grawity
Если честно, думаю, я допустил ошибку в своем анализе. Этот сервер является сервером OpenVPN, и конфигурация iptables для трафика NAT, покидающего сервер из
—
btongeorge
eth0
, Я смотрел на движение на tun0
но это будет pre-NAT, поэтому порт при выходе будет другим eth0