Почему не работает без подмены?

У меня есть маршрутизатор - G, мой рабочий стол - D, ноутбук - L. Я хочу подключить L к Интернету через D.

G в 192.168.1.1

D: enp1s0 - 192.168.1.2/24, gw G, eno1 - 10.0.0.1/16, служит маршрутизатором для L

L: enp1s0 - 10.0.0.2, gw 10.0.0.1. Таблицы маршрутизации в L:

netstat -nr
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         10.0.0.1        0.0.0.0         UG        0 0          0 enp1s0
10.0.0.0        0.0.0.0         255.255.255.0   U         0 0          0 enp1s0
192.168.122.0   0.0.0.0         255.255.255.0   U         0 0          0 virbr0

Пакетная передача в D включила:

sysctl net.ipv4.ip_forward
net.ipv4.ip_forward = 1

Однако L не соединяется с Интернетом:

traceroute 8.8.8.8
traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 60 byte packets
 1  10.0.0.1 (10.0.0.1)  0.346 ms  0.339 ms *
 2  10.0.0.1 (10.0.0.1)  0.370 ms !X * *

Очевидно, что пакеты L могут достигнуть D, но они могли передать не дальше.

Однако L соединяется, когда я позволяю подменить на D:

firewall-cmd --zone=public --add-masquerade=yes
success

Можно ли объяснить, почему L соединяется с Интернетом только при подмене в интерфейсе D (который подключен к L непосредственно), включен?

0
задан 5 January 2017 в 10:11

1 ответ

Причина, которую Вы должны ПОДМЕНИТЬ, из-за способа, которым работает NAT.

Рассматривают Ваш маршрутизатор, G. Это получает IP от Интернет-провайдера. Тот IP-адрес - то, что все системы позади маршрутизатора выходят в Интернет, таким образом, все системы подменяют тем IP-адресом. (Который является, как маршрутизаторы работают в жилых основных установках).

Ваш компьютер D, действуя как шлюз NAT для Вашего ноутбука, L, связывается с теми же правилами того, как Интернет работает. Идеально, то, что Вы сделали бы, имеет по крайней мере один внутренний IP-адрес, и когда он запрашивает ресурс кроме других компьютеров в той подсети, он требует способности подменить пакеты от L как внутренний IP-адрес D для надлежащей маршрутизации пакетов через G.

Это также имеет место с использованием компьютера как сервер VPN; для выхода в остальную часть сети или конкретно внешней сети необходимо подменить IP-адресом того сервера.

Это, как NAT работает. То же относится к прокси, и т.д.

1
ответ дан 7 November 2019 в 05:04

Другие вопросы по тегам:

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