Поиск по сайту:

Как установить шлюз по умолчанию в Linux


Доступ к Интернету или любой другой сети регулируется шлюзом по умолчанию. Мы объясним, что такое шлюз по умолчанию и как установить и изменить его на вашем компьютере с Linux.

Шлюз по умолчанию

Все устройства в вашем доме, подключенные к Интернету, такие как ноутбуки, настольные компьютеры, сотовые телефоны, планшеты и смарт-устройства, фактически подключены к вашей локальной сети (LAN).

Поскольку они находятся в одной сети, эти устройства могут взаимодействовать друг с другом, если это необходимо. Большинство из них счастливы заниматься своими делами и работать изолированно, но если у вас есть, например, принтер или сетевое запоминающее устройство, то некоторые из ваших других устройств захотят иметь возможность подключаться к ним.

Все ваши сетевые устройства подключаются к маршрутизатору через Wi-Fi или сетевой кабель. Ваш маршрутизатор является контроллером трафика для вашей сети. Он направляет сетевой трафик с устройства на устройство. Трафик от каждого устройства идет к маршрутизатору, маршрутизатор определяет, на какое устройство идут данные, и отправляет их на целевое устройство.

Ваш маршрутизатор — это единственная часть вашей сети, которая действительно подключена к Интернету. Все остальное говорит с вашим маршрутизатором, а маршрутизатор обеспечивает подключение к Интернету. Ответы от интернет-служб, таких как почтовые серверы или веб-сайты, принимаются маршрутизатором. Затем он перенаправляет их на соответствующее устройство в вашей сети.

Таким образом, помимо направления трафика по вашей сети, ваш маршрутизатор также контролирует поток данных в Интернет и из Интернета. Это контроллер трафика и шлюз для других сетей. Для большинства людей единственной другой сетью, которая их интересует, является Интернет.

Устройство, отправляющее трафик, называется инициирующим устройством. В больших сетях исходное устройство решает, какой маршрутизатор использовать. Если он не указывает предпочтение или если есть только один маршрутизатор, используется шлюз по умолчанию. В большинстве домашних сетей обычно есть один маршрутизатор, содержащий один шлюз.

Настройка шлюза по умолчанию

Обычно шлюз настраивается при установке операционной системы. Иногда вы можете стать владельцем компьютера, который использовался в другой сети, для которой вам нужно перенастроить шлюз, или вам может понадобиться указать конкретному компьютеру другой шлюз. Возможно, у вас есть сеть с разными подсетями, и у вас есть шлюз, выступающий в роли посредника.

Предпочтительный метод работы с маршрутами в Linux — с помощью команды ip. Другие команды, такие как ifconfig, считаются устаревшими.

С помощью команды ip вы можете узнать настройки шлюза по умолчанию, а также добавить или удалить шлюзы по умолчанию.

Обнаружение шлюза по умолчанию

Чтобы просмотреть маршруты, настроенные на компьютере с Linux, используйте команду ip с объектом route. Вы можете добавить параметр list, но поскольку list является действием по умолчанию, его можно опустить. А для дополнительной экономии нажатий клавиш вместо слова «маршрут» можно использовать «r».

ip route list
ip r

В одном из маршрутов будет слово «по умолчанию». Это маршрут по умолчанию к шлюзу по умолчанию.

Иногда маршруты могут добавляться и удаляться автоматически. Использование команды ip r на том же компьютере приводит к другому результату, когда мы открываем VPN-соединение. Это создает частный туннель для этого сетевого трафика.

Мы видим, что новая запись имеет имя устройства «dev» «tun0», что означает нулевой туннель.

Если у вас настроено много маршрутов, может быть проще извлечь маршрут по умолчанию с помощью grep.

ip r | grep default

Удаление шлюза по умолчанию

На самом деле мы удаляем маршрут, который направляет трафик к шлюзу по умолчанию. Мы можем использовать команду ip с объектом route и опцией delete. Чтобы внести изменения в таблицу маршрутизации, нам нужно использовать sudo. Мы удалим маршрут по умолчанию, а затем перечислим маршруты.

sudo ip route delete default
ip r

Запись шлюза по умолчанию была удалена.

Добавление шлюза по умолчанию

Чтобы добавить шлюз по умолчанию, мы используем параметр add с объектом route.

Мы собираемся добавить маршрут с именем «по умолчанию», который направляет трафик на маршрутизатор по адресу 192.168.1.1, и мы собираемся отправлять этот трафик через сетевой интерфейс «enp0s3».

sudo ip route add default via 192.168.1.1 dev enp0s3
ip r

Сохранение изменений маршрутизации

Изменения, которые мы сделали до сих пор, вступают в силу мгновенно, но они не сохраняются после перезагрузки компьютера. Чтобы сделать ваши изменения постоянными, необходимо изменить некоторые файлы конфигурации. Методы отличаются от дистрибутива Linux к дистрибутиву Linux.

Убунту

В Ubuntu вы можете использовать команду netplan и файл конфигурации.

sudo gedit /etc/netplan/01-network-manager-all.yaml

Добавьте текст, начинающийся с «ethernets», в файл конфигурации. Обратите внимание, что пробелы важны. Убедитесь, что каждый последующий уровень отступа составляет два пробела, и позаботьтесь о включении дефиса «-» в строку «- to:». Это установит маршрут по умолчанию к маршрутизатору 192.168.1.1. Замените его на IP-адрес вашей сети.

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

Чтобы применить изменения, используйте команду netplan с опцией apply:

sudo netplan apply

Незаметный возврат в командную строку означает, что изменения приняты. Если вы хотите протестировать изменения перед их применением, используйте команду netplan с параметром try.

sudo netplan try

Это дает вам время протестировать ваши изменения. Нажмите клавишу «Enter», чтобы зафиксировать изменения. Если вы не нажмете клавишу «Ввод» в течение двух минут, время ожидания процесса истечет, и ваши изменения не будут применены. Они все еще находятся в файле конфигурации, но они не были применены к настройкам вашей сети.

Федора

В Fedora нам нужно отредактировать файл «/etc/sysconfig/network» и либо добавить, либо отредактировать строку «GATEWAY=».

sudo gedit /etc/sysconf/networks

Файл может быть пустым или содержать другие настройки. Либо найдите и отредактируйте строку «GATEWAY=», либо добавьте ее. Замените IP-адрес на тот, который подходит для вашей сети.

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

Манджаро

С Manjaro нам нужно отредактировать или создать файл с именем сетевого интерфейса, для которого вы устанавливаете шлюз по умолчанию. Файл имеет расширение «.network», а имя файла совпадает с именем сетевого интерфейса.

Во-первых, нам нужно остановить демона сетевого менеджера:

sudo systemctl stop NetworkManager.service

Мы можем найти имя интерфейса с помощью команды ip addr:

ip addrr

Имя нашего интерфейса — «enp0s3».

Нам нужно будет использовать это в следующей команде.

sudo gedit /etc/systemd/network/enp0s3.network

В файле уже могут быть записи, или он может быть совершенно пустым. Убедитесь, что эти две строки присутствуют в файле. Подставьте IP-адрес шлюза и имя сетевого интерфейса в соответствии с вашим компьютером и сетью.

Сохраните файл и закройте редактор, а затем перезапустите демон сетевого менеджера.

sudo systemctl start NetworkManager.service

Вы можете не менять его часто

Но когда вам нужно, вы обнаружите, что это легко. Сделать изменения постоянными при перезагрузке немного сложнее, но все же не так уж сложно.