53 lines
2.1 KiB
Markdown
53 lines
2.1 KiB
Markdown
### Статический маршрут на Raspberry Pi
|
||
|
||
**синтаксис ip ro**
|
||
```bash
|
||
ip route add <IP/Net> via <Gateway IP>
|
||
```
|
||
Все параметры можно посмотреть `ip route help`
|
||
|
||
Пример:
|
||
```bash
|
||
ip ro add 192.168.2.0/24 via 192.168.0.1
|
||
ip ro add 192.168.3.159/32 via 192.168.0.1
|
||
```
|
||
*в команде ip можно использовать сокращенный синтаксис ip ro … в место ip route …*
|
||
Для удаления статического маршрута используйте **del** вместо **add**
|
||
|
||
Добавить маршрут по умолчанию
|
||
```bash
|
||
ip route add default via 10.7.0.1 dev enp1s0
|
||
```
|
||
маршрут через `10.7.0.1` (допустим наш роутер) через интерфейс с именем `enp1s0`
|
||
|
||
***
|
||
|
||
**Постоянный статический маршрут**
|
||
```bash
|
||
pi@raspberrypi:~ $ uname -a
|
||
Linux raspberrypi 4.19.57-v7+ #1244 SMP Thu Jul 4 18:45:25 BST 2019 armv7l GNU/Linux
|
||
pi@raspberrypi:~ $ lsb_release -a
|
||
No LSB modules are available.
|
||
Distributor ID: Raspbian
|
||
Description: Raspbian GNU/Linux 10 (buster)
|
||
Release: 10
|
||
Codename: buster
|
||
```
|
||
|
||
*чтобы маршрут сохранился после перезагрузки, его необходимо добавить в папку `/lib/dhcpcd/dhcpcd-hooks/`*
|
||
*по-умолчанию, в этой папке уже есть несколько конфигурационных файлов, можно воспользоваться ими или создать свой*
|
||
```bash
|
||
pi@raspberrypi:~ $ cat /lib/dhcpcd/dhcpcd-hooks/
|
||
01-test 02-dump 10-wpa_supplicant 20-resolv.conf 30-hostname 50-ntp.conf 90-static-routes.conf
|
||
```
|
||
Как видно из названия, статические маршруты описываются в этом файле `90-static-routes.conf`
|
||
*по-умолчанию, файл пустой*
|
||
Добавим маршрут
|
||
```bash
|
||
pi@raspberrypi:~ $ cat /lib/dhcpcd/dhcpcd-hooks/90-static-routes.conf
|
||
# route to inband management test nets
|
||
|
||
ip route add 10.254.0.0/16 via 192.168.90.100
|
||
|
||
```
|