LinuxForum.Fans
Тема

[РЕШЕНО] Не работает net.ipv4.ip_forward=1

Автор: caspar 3 сообщений 1939 просмотров 🔒 закрыта
27.01.2021 18:56 · отредактировано #435929

Я решил заменить компьютер, выполняющий роль интернет-шлюза в домашней сети. На новый компьютер поставил систему MX Linux 19.3 (дистрибутив на основе Debian 10). В компьютере имеются две сетевые карты:

Показать
text
# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.0.250  netmask 255.255.255.0  broadcast 192.168.0.255
        inet6 fe80::2284:e52d:880a:904d  prefixlen 64  scopeid 0x20<link>
        ether 18:c0:4d:08:eb:53  txqueuelen 1000  (Ethernet)
        RX packets 33707  bytes 2767464 (2.6 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1262  bytes 183678 (179.3 KiB)
        TX errors 13  dropped 0 overruns 0  carrier 0  collisions 0

eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.1.2 netmask 255.255.255.0 broadcast 192.168.1.255 inet6 fe80::fe76:af03:3d68:6a3f prefixlen 64 scopeid 0x20<link> ether 50:3e:aa:10:b6:a3 txqueuelen 1000 (Ethernet) RX packets 58631 bytes 70399675 (67.1 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 61103 bytes 4418094 (4.2 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 ... ... ...

eth0 смотрит в локальную сеть, а eth1 -- в интернет через гейтвей 192.168.1.254:

text
# netstat -nr
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         192.168.1.254   0.0.0.0         UG        0 0          0 eth1
192.168.0.0     0.0.0.0         255.255.255.0   U         0 0          0 eth0
192.168.1.0     0.0.0.0         255.255.255.0   U         0 0          0 eth1
192.168.3.0     0.0.0.0         255.255.255.0   U         0 0          0 eth0

Я отредактировал файл /etc/sysctl.conf таким образом:

text
net.ipv4.ip_forward=1

и проверил, что это работает:

text
# cat /proc/sys/net/ipv4/ip_forward
1

Когда я пингую с компьютера 192.168.0.79, подключенного к eth0 адреса 192.168.0.250 (eth0) и 192.168.1.2 (eth1), все нормально, я получаю отклик. Но при попытке пинговать адрес 192.168.1.254, к которому подключена eth1, я получаю: "Destination Host Unreachable"
Файерволл полностью открыт:

text
# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT) target prot opt source destination

Chain OUTPUT (policy ACCEPT) target prot opt source destination

Что можно сделать, чтобы форвардинг заработал?

28.01.2021 12:23 #435931

Моя вина. Второй раз делаю одну и ту же ошибку (правда, в первый раз до поста в форум не дошло, сам допер).
После добавления в файервол строчки:

text
/sbin/iptables -t nat -A POSTROUTING -o $INET_IFACE -j MASQUERADE

все заработало. Тема закрыта.

Войдите или зарегистрируйтесь, чтобы ответить.