Маршруты в Windows

route print - вывести список всех маршрутов, ключ -4 выведет все маршруты только по протоколу ipv4

Добавить маршрут в Windows

Синтаксис добавления маршрута в CMD

route add -p <SUBNET_ID> mask <SUBNET_MASK> <GATEWAY> <METRIC> IF <INTERFACE_ID>

где:
Ключ -p (persistent) добавит статический маршрут, т.е. он сохранится после перезагрузки. Во избежание стрельбы себе в ногу лучше сначала добавить без -p, протестить и потом уже добавить с -p.
SUBNET ID - подсеть которую мы добавляем
SUBNET MASK - маска для нового маршрута
METRIC - вес маршрута от 1 до 9999, чем меньше значение, тем выше приоритет маршрута
GATEWAY - гейтвей для новой подсети, по сути первый hop в который сервер отправит трафик
INTERFACE ID - необязательно, нро лучше указываем интерфейс, иначе может забиндиться на другой NIC и отправить трафик в неверном направлении, прописываем route print и смотрим внутренний номер интерфейса

Добавить маршрут в CMD

route add -p 192.168.0.0 MASK 255.255.255.0 192.168.1.1 metric 7 IF 11

Прочитать можно так: чтобы трафик попал в подсеть 192.168.0.0/24, нужно обратиться к узлу 192.168.1.1 через сетевой интерфейс с айди 11

Добавить маршрут в PowerShell

Тут вместо route print используется Get-NetRoute
Get-NetAdapter используется чтобы узнать Interface Index

New-NetRoute -DestinationPrefix "192.168.0.0/24" -RouteMetric 7 -InterfaceIndex 11 -NextHop 192.168.1.1

Удалить маршрут в Windows

Удалить маршрут в CMD

route delete 192.168.0.0 MASK 255.255.255.0 192.168.1.1 IF 11

Удалить маршрут в PowerShell

Remove-NetRoute -DestinationPrefix "192.168.0.0/24" -RouteMetric 7 -InterfaceIndex 11 -NextHop 192.168.1.1

Маршруты в Linux Линукс

route -n - вывести список всех маршрутов

Добавить маршрут в Linux Линукс

route add -net 192.168.0.0 netmask 255.255.255.0 gw 192.168.1.1 dev eth0

или

route add -net 192.168.0.0/24 gw 192.168.1.1 dev eth0

Добавить статический маршрут в Linux

В /etc/network/interfaces, после описания интерфейса, следует добавить:

post-up route add -net 192.168.0.0 netmask 255.255.255.0 gw 192.168.1.1

Удалить маршрут в Linux Линукс

route delete -net 192.168.0.0 netmask 255.255.255.0 gw 192.168.1.1

 

Поделиться