Как проверить NAT в реальном времени?

Я занимаюсь устранением неполадок в нашей сети и VPN, и я хочу отслеживать трафик, и я хочу видеть, нормально ли работают SNAT и DNAT. Я хочу что-то живое, например tcpdump, чтобы я мог видеть что-то вроде:

192.168.25.40 <----> 172.16.30.245 icmp echo-request 194.30.25.10 194.30.25.10 icmp echo-reply 172.26.30.245 <----> 192.168.25.40

Можно ли сделать это с помощью tcpdump, iptraf или iftop? Или есть какой-нибудь другой инструмент, который я мог бы использовать для просмотра NAT в реальном времени?

Спасибо

0
29.06.2017, 20:13
1 ответ

Не знаю, что вы делаете не так, но вот пример. Настройка :Два сетевых пространства имен ns0и ns1с двумя парами veth, основное пространство имен вперед:

ns0          <------- main ------->     ns1
veth0b   --- veth0a          veth1a --- veth1b
10.0.0.1     10.0.0.254  10.0.1.254     10.0.1.1

Выполнение простого tcpdumpна veth0aи veth1a. Пингование ns0от ns1без NAT показывает:

IP 10.0.1.1 > 10.0.0.1: ICMP echo request, id 20765, seq 1, length 64
IP 10.0.0.1 > 10.0.1.1: ICMP echo reply, id 20765, seq 1, length 64

на veth0aи наveth1a:

IP 10.0.1.1 > 10.0.0.1: ICMP echo request, id 20765, seq 1, length 64
IP 10.0.0.1 > 10.0.1.1: ICMP echo reply, id 20765, seq 1, length 64

После включения SNAT на veth0aс помощью

iptables -t nat -A POSTROUTING -o veth0a -s 10.0.1.1/32 -j SNAT --to 10.0.1.90

теперь на veth0aесть

IP 10.0.1.90 > 10.0.0.1: ICMP echo request, id 20795, seq 1, length 64
IP 10.0.0.1 > 10.0.1.90: ICMP echo reply, id 20795, seq 1, length 64

во времяveth1a

IP 10.0.1.1 > 10.0.0.1: ICMP echo request, id 20795, seq 1, length 64
IP 10.0.0.1 > 10.0.1.1: ICMP echo reply, id 20795, seq 1, length 64

Таким образом, ясно видно, что SNAT работает.

Как я уже сказал, вам нужно сбрасывать пакеты на как исходящий, так и входящий интерфейс.

1
28.01.2020, 02:45

Теги

Похожие вопросы