Назад | Перейти на главную страницу

Разница между IP-маршрутом и NAT?

Я пытаюсь настроить Linux-сервер в качестве маршрутизатора, и меня немного смущает, как следующие правила повлияют на пакеты.

например В таблице маршрутизации я могу иметь

default via 10.10.1.1 dev eth0 src 192.168.1.1

который изменяет исходный IP-адрес пакета на 192.168.1.1

А в iptables я могу

-A POSTROUTING -s 192.168.0.0/255.255.0.0 -o eth0 -j SNAT --to 192.168.1.1

Который также, похоже, запрашивает следующий переход, что пакет возврата должен идти на 192.168.1.1

Так в чем разница?

Первый выбирает исходный IP-адрес, когда пакет создается на этом компьютере, и исходный IP-адрес не зависит от каких-либо других факторов. То есть, когда системе нужно выбрать исходные адреса, это определяет ее выбор.

Второй изменяет исходный IP-адрес уже существующего пакета, который маршрутизируется.

Один влияет на пакет поколение другой влияет на пакет пересылка.