Почему статические маршруты перестают работать после перезагрузки устройства?

Я недавно начал переходить с CentOS на отечественный Ред ОС. В нашей организации есть две сети: интернет и локальная сеть. Мне необходимо наладить работу обеих сетей на моем компьютере. Я пытался настроить маршруты с помощью следующих команд:  
<pre><code class="bash">sudo  route add 0.0.0.0 gw 10.21.96.193
sudo  route add -net 10.0.0.0/8 gw 10.21.136.1</code></pre>  
где интернет-адрес: 10.21.96.193 и локальный адрес: 10.21.136.1.  
Подскажите, каким образом я могу сделать эти маршруты постоянными?
  • 15 сентября 2024 г. 16:03
Ответы на вопрос 2
В Ред ОС для настройки статических маршрутов, которые сохраняются после перезагрузки, вы можете использовать один из следующих способов:

### 1. Использование файла конфигурации маршрутов

Вы можете создать файл конфигурации для статических маршрутов в директории `/etc/sysconfig/network-scripts/`. Например, вы можете создать файл с расширением `.route-<имя интерфейса>`, как в примере ниже:

#### Для маршрутов интерфейса

1. Определите имя вашего сетевого интерфейса, например `eth0` или `ens33`. Чтобы увидеть список интерфейсов, выполните команду:
   ```bash
   ip addr
   ```

2. Создайте файл, например, для интерфейса `eth0`:
   ```bash
   sudo nano /etc/sysconfig/network-scripts/route-eth0
   ```

3. В этот файл добавьте строки с маршрутизацией:
   ```
   0.0.0.0/0  10.21.96.193
   10.0.0.0/8  10.21.136.1
   ```

4. Сохраните файл и выйдите из редактора.

### 2. Использование NetworkManager (если он установлен)

Если ваш Ред ОС использует NetworkManager для управления сетевыми настройками, вы можете добавить статические маршруты через `nmcli`, командную утилиту для NetworkManager:

1. Получите имя вашего сетевого соединения:
   ```bash
   nmcli connection show
   ```

2. Добавьте статический маршрут:
   ```bash
   nmcli connection modify "<имя подключения>" +ipv4.routes "0.0.0.0/0 10.21.96.193"
   nmcli connection modify "<имя подключения>" +ipv4.routes "10.0.0.0/8 10.21.136.1"
   ```

3. Примените изменения:
   ```bash
   nmcli connection up "<имя подключения>"
   ```

### 3. Использование системного файла конфигурации

Также можно добавить команды маршрутизации в файл `/etc/rc.local`. Однако этот способ менее предпочтителен, так как `rc.local` не всегда по умолчанию активен в системах на основе Systemd.

1. Откройте файл:
   ```bash
   sudo nano /etc/rc.local
   ```

2. Добавьте ваши команды (не забудьте добавить `exit 0` в конце):
   ```bash
   #!/bin/bash
   route add 0.0.0.0 gw 10.21.96.193
   route add -net 10.0.0.0/8 gw 10.21.136.1
   exit 0
   ```

3. Сохраните файл и убедитесь, что он исполняемый:
   ```bash
   sudo chmod +x /etc/rc.local
   ```

### После настройки

После внесения изменений вам нужно перезагрузить компьютер или перезапустить сетевые службы, чтобы убедиться, что маршруты загрузятся правильно. Вы можете также проверить текущую таблицу маршрутов с помощью команды:
```bash
route -n
```

В результате маршруты должны оставаться постоянными и работать после перезагрузки устройства.
ну введи их после перезагрузки.. если надо автоматизировать - засунь в sh скрипт и в крон
Похожие вопросы