Вот является хорошее сообщение на некотором менее известном / скрытыми экранными функциями:
Ваш route
оператор в конфигурационном файле должен обратиться к сетевому идентификатору 192.168.128.0
, нет 192.168.154.0
. route
блюет, потому что Вы даете ему идентификатор сети и маску подсети, чем при взятии вместе имеет 1's в идентификационной части хоста.
192.168.154.0 в двоичном файле:
11000000.10101000.10011010.00000000
Маска подсети 255.255.128.0 похожа:
11111111.11111111.10000000.00000000
Маска подсети относилась к 192.168.154.0 "идентификаторам сети", похож:
11000000.10101000.10011010.00000000
AND 11111111.11111111.10000000.00000000
---------------------------------------
11000000.10101000.10000000.00000000 = 192.168.128.0
Вы видите, что 192.168.154.0 замаскированных/17 маской подсети приводят к 1's после конца маски подсети. Сетевой идентификатор 192.168.154.0/17 "сети" действительно 192.168.128.0/17. Измените Ваш route
оператор в конфигурационном файле и route
команда прекратит блевать.
Включение ip_forward
требуется. Поле Linux не направит, если это не будет. На Ubuntu простой способ зафиксировать это состоит в том, чтобы скорректировать/etc/sysctl.conf, просто не прокомментировать ip_forward строку. Затем перезагрузите систему или работайте sysctl -p
.