что является эквивалентом команды route add в ОС Windows?

что является эквивалентом команды route add в ОС Windows?

Мне нужно выполнить команду

route add -p 123.45.67.8 mask 255.255.255.0 208.00.000.000

на сервере Linux. Какой эквивалент в Unix?

решение1

Они очень похожи.

Чтобы добавить маршрут для сети — в этом примере 192.168.20.0 маска 255.255.255.0

sudo route add -net 192.168.20.0/24 gw 10.0.0.1

или

sudo route add -net 192.168.20.0 netmask 255.255.255.0 gw 10.0.0.1

Чтобы добавить маршрут для хоста

sudo route add -host 192.168.20.20 gw 10.0.0.1

Если вы запустите программу route addбез параметров, вам будет предоставлен список параметров, которые вы можете использовать. Например, метрики, интерфейс и некоторые другие.

Также вам поможет страница руководства.

решение2

Без объяснения того, что делает эта команда Windows, ответить сложно, но, похоже, вам следует прочитать страницу руководства по ip-route.

решение3

Один из способов сделать маршрут постоянным — добавлять его каждый раз при запуске машины. Это дает тот же результат, что и -pфлаг в Windows.

Это можно сделать с помощью Cron:

@reboot /sbin/route add -net 123.45.67.8 netmask 255.255.255.0 gw 208.0.0.0 

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

Это работает по крайней мере в Ubuntu 14.04 и, вероятно, в большинстве современных реализаций Cron.

решение4

Чтобы добавлять маршрут каждый раз, когда интерфейс включается, и удалять его каждый раз, когда он выключается, можно добавить подходящую команду в строфу интерфейса в /etc/network/interfaces(для Debian). Вот одна из моих (она заставляет локальные трансляции идти в локальную сеть, а не к провайдеру на моем шлюзе NAT):

iface eth1 inet static
      address 192.168.0.2
      netmask 255.255.255.0
      pre-up iptables-restore </etc/iptables.rules
      up route add 255.255.255.255 eth1
      down route del 255.255.255.255

Его можно легко адаптировать к вашей ОС и потребностям.

Связанный контент