How to restart network interfaces on Linux
O nce you make changes in the network interface, they affect the network services manager of your system. To enable the system or machine to connect to the network, one needs to restart the network interface to apply the changes without rebooting your server.
This article will guide you on restarting the network interface in various Linux distributions.
Note: When running SSH/ VNC or other remote-based sessions, you should take precautions since restarting the network interface or service can result in network disconnectivity, resulting in connection loss.
We will handle the following topics.
What is a network interface?
A network interface refers to the point of connection between a computer and the network. It can be either software (especially with Virtual machines) or a hardware component. When dealing with network interfaces, there is one term that you will likely come across – NIC (Network Interface Card).
A Network Interface Card is a circuit board chip inserted/ soldered on the motherboard allowing your computer to connect to the internet. If you have worked with many earlier Desktop computers (even some today), you know that most cannot connect to a WiFi network, and that’s because they don’t have a wireless NIC. You are advised to purchase a USB Network Adapter that will act as your wireless interface connection in such a situation.
How to list network interfaces on Linux
You can use different ways to see all the available network interfaces on your system. You can use the GUI or the Command-line (CLI). In this post, we highly recommend using the Terminal (CLI) since the GUI settings app might not list specific interfaces.
- ifconfig
- ip
- netstat
- nmcli
1. The ifconfig command
This command has long been used to list and configure network interfaces on Linux. Unfortunately, this command is marked as ‘deprecated’ and does not come pre-installed in certain distributions like recent Debian and Kali Linux releases.
How to Reset Network Interfaces Configuration on Ubuntu Server 18.04?
I have no idea what I’ve done — but it was all working fine, now it’s not, and I cannot for the life of me figure out what is wrong.
How can I completely reset the network interfaces?
All I want to do is connect to the internet. I can see the server listed in the Router’s Admin screen, with a dynamic IP address that has been generated through the Routers DHCP server.
I’ve tried deleting all contents within the /etc/network/interfaces file
I’ve tried deleting all YAML files within /etc/netplan, yet whenever I try to run the command netplan apply I keep getting the error «returned non-zero exit status 4» — Whatever that means.
I’ve a feeling that something has got screwed up along the way, and I just need to re-set everything then start from the beginning to get the server accessing the internet (outbound).
More Details
Previously when I had this working I had a static IP for the box on the network, and I could connect to the internet no problem — I’ve no idea what I changed between it working and not working. What was odd though was that when it stopped working I could see the box had 2x MAC addresses listed on the routers admin page, the static IP that I had configured and another MAC address with the server having it’s own Dynamic IP address. All I can assume there is that I’ve plugged in the Ethernet cable into one of the different network ports in the back of the machine.
Here are the outputs to the files as requested;
lshw -C network
cat /etc/netplan/*.yaml
Note: The above IP address, I’m not sure if I typed that (and did a typo when i did, since last time I was trying to get this working the server showed up in the Routers admin with a .104 IP, not a .04 IP — And at the time of writing this, the server isn’t showing up in the Routers admin at all.
And here are the network details when I check within the Router’s admin screen;
Update 2
Ok, so after writing the above update about 5 minutes ago, I think I’ve actually got this working (sometimes all you need is some time to stop working on something then come back to it another day!)
So here’s what I did, I simply changed the following file so it looks like this instead;
Which I can only assume that because the other bits were in there previously, that Netplan thought that the router was configured with a static IP address rather than a dynamic IP address — or getting confused somewhere along the way since the settings look to be telling itself that it is both static (with the ‘addresses’ setting) and dynamic (with the ‘dhcp4’ setting) at the same time.
It’d be good to understand exactly why what I have changed actually works — is my assumption above correct?
In addition, does the filename of the .yaml file within /etc/netplan/ actually matter? Not really sure where this comes from, since I recall that the filename is different now than what it was previously when I was deleting / recreating the files.
BTW — This is just a test system I’m working on — hence why I can safely just delete things, screw it all up, and try and fix it 🙂 Trying to get a much better understanding of the Ubuntu/Linux architecture and playing around at the minute.
Утилита ip Linux
Если вы начинающий системный администратор, думаю, вам понадобится утилита ip. Она позволяет посмотреть сетевые интерфейсы и IP адреса им присвоенные, посмотреть и настроить таблицу маршрутизации, включать или отключать сетевые интерфейсы, управлять маршрутизацией и ARP, а также многое другое.
Раньше вместо неё использовалось несколько других утилит, одна из них — ipconfig. Однако потом им на замену пришла ip. Сейчас она уже поставляется во всех дистрибутивах, а со временем старые утилиты будут удалены, поэтому разобраться с ней стоит.
Синтаксис и опции утилиты ip
Сначала рассмотрим синтаксис команды. Утилита довольно многофункциональная, поэтому и синтаксис её вызова непростой:
$ ip [опции] объект команда [параметры]
Опции — это глобальные настройки, которые сказываются на работе всей утилиты независимо от других аргументов, их указывать необязательно.
- объект — это тип данных, с которым надо будет работать, например: адреса, устройства, таблица arp, таблица маршрутизации и так далее;
- команды — какое-либо действие с объектом;
- параметры — само собой, командам иногда нужно передавать параметры, они передаются в этом пункте.
Дальше рассмотрим все еще более подробно:
- -v, -Version — только вывод информации об утилите и ее версии.
- -h, -human — выводить данные в удобном для человека виде.
- -s, -stats — включает вывод статистической информации.
- -d, —details — показывать ещё больше подробностей.
- -f, -family — позволяет указать протокол, с которым нужно работать, если протокол не указан, то берется на основе параметров команды. Опция должна принимать одно из значений: bridge, dnet, inet, inet6, ipx или link. По умолчанию используется inet, link — означает отсутствие протокола.
- -o, -oneline — выводить каждую запись с новой строки.
- -r,-resolve — определять имена хостов с помощью DNS.
- -a, -all — применить команду ко всем объектам.
- -c, -color — позволяет настроить цветной, доступные значения: auto, always и never.
- -br, -brief — выводить только базовую информацию для удобства чтения.
- -4 — короткая запись для -f inet.
- -6 — короткая запись для -f inet-f inet6.
- -B — короткая запись для -f inet-f bridge.
- -0 — короткая запись для -f inet -f link.
Теперь давайте рассмотрим самые важные объекты.
- address или a — сетевые адреса.
- link или l — физическое сетевое устройство.
- neighbour или neigh — просмотр и управление ARP.
- route или r — управление маршрутизацией.
- rule или ru — правила маршрутизации.
- tunnel или t — настройка туннелирования.
Конечно, это не все объекты которые поддерживает команда ip Linux, но на первое время вам хватит. Во время ввода имя объекта может быть сокращено до одной буквы. При неоднозначности используется алфавитный порядок. Например, ip a show, расшифровывается как ip address show. Тогда как в ip r show, r — означает route.
Теперь рассмотрим доступные команды, с помощью которых может быть выполнена настройка сети linux. Они зависят от объекта, к которому будут применяться. Вот основные команды: add, change, del или delete, flush, get, list или show, monitor, replace, restore, save, set, и update. Если команда не задана, по умолчанию используется show (показать).
Здесь тоже поддерживается сокращение и в большинстве случаев для выполнения нужного действия достаточно нескольких символов. Но алфавитный порядок соблюдается не всегда. Например, ip a s, означает ip address show, а не ip address set, к сожалению.
Примеры использования ip
Вот теперь мы дошли к самому интересному — примерам использования утилиты ip Linux. То что я здесь опишу на самом деле лишь маленькая капля из всего того что может утилита ip.
1. Просмотр IP адресов
Чтобы посмотреть все IP адреса, связанные с сетевыми интерфейсами используйте такую команду:
Для просмотра информации в кратком виде используйте опцию -br:
Можно посмотреть IP адреса только по определённому сетевому интерфейсу, например: enp0s3:
ip a show enp0s3
ip a show dev enp0s3
Можно отобразить только статические IP адреса:
ip a show dev enp0s3 permanent
Или только динамические:
ip a show dev enp0s3 dynamic
2. Добавление IP адреса
Чтобы присвоить IP адрес для устройства нужно использовать команду add. Её общий синтаксис такой:
$ ip addr add IP_адрес / маска dev интерфейс
Например, давайте присвоим тому же интерфейсу enp0s3 IP адрес 10.0.2.100 с маской подсети 255.255.255.0:
ip addr add 10.0.2.100/255.255.255.0 dev enp0s3
Маску можно указать и в сокращённом виде:
ip addr add 10.0.2.100/24 dev enp0s3
3. Удаление IP адреса
Чтобы удалить IP адрес из интерфейса надо использовать команду del. Синтаксис её очень похож на предыдущую команду. Например, удалим IP адрес 10.0.2.100:
ip addr del 10.0.2.100/255.255.255.0 dev enp0s3
Можно удалять IP адреса по одному или удалить все сразу с помощью команды flush:
Или же можно удалить адреса только определённой подсети:
sudo ip a flush to 10.0.2.0/24
Если вы будете применять эти команды к интерфейсу, с помощью которого у вас работает сеть, то сеть пропадёт и чтобы её вернуть надо будет перезагрузить сетевые службы.
4. Список интерфейсов
Чтобы посмотреть список сетевых интерфейсов используйте объект link:
5. Включение или выключение интерфейсов
Для решения этой задачи тоже используется объект link, но с командой set. Синтаксис её такой:
$ ip link set dev интерфейс действие
В качестве действия можно использовать up или down. Например, чтобы отключить интерфейс enp0s3 выполните:
ip link set dev enp0s3 down
А чтобы включить его обратно:
ip link set dev enp0s3 up
6. Настройка MTU
Параметр MTU означает размер одного пакета, передаваемого по сети. Этот размер можно изменить с помощью команды set. Например, увеличим MTU для enp0s3 до 4000 тысяч байт:
ip link set mtu 4000 dev enp0s3
7. Настройка MAC адреса
Адрес MAC — это физический адрес, который используется для определения какому устройству надо передать сетевой пакет в локальной сети. Прежде чем настраивать MAC адрес ваше устройство надо отключить:
sudo ip link set dev enp0s3 down
Затем можно установить адрес:
sudo ip link set dev enp0s3 address AA:BB:CC:DD:EE:FF
А потом включить интерфейс обратно:
sudo ip link set dev enp0s3 up
8. Таблица ARP
Именно протокол ARP отвечает за преобразование IP адресов в низкоуровневые MAC адреса. Для того чтобы не отправлять ARP запросы каждый раз в сеть, кэш хранится в таблице ARP на протяжении 20-ти минут. Чтобы посмотреть содержимое таблицы ARP используйте такую команду:
9. Добавление записи в таблицу ARP
Обычно записи в эту таблицу попадают автоматически, но вы можете добавить их и вручную. Для этого используйте команду add объекта neigh:
sudo ip neigh add 192.168.0.105 lladdr b0:be:76:43:21:41 dev enp0s3
В этом примере я заставил компьютер думать, что узел с IP 192.168.0.105 это 192.168.0.1. Теперь можно попытаться выполнить ping по этому адресу и оно будет работать, несмотря на то, что реально такого узла в сети нет.
10. Очистка таблицы ARP
Вы можете удалять IP адреса по одному с помощью команды del:
sudo ip neigh del dev enp0s3 192.168.0.105
Можно удалить все записи для определённого сетевого интерфейса:
ip neigh flush dev enp0s3
Или очистить таблицу полностью командой flush:
11. Просмотр таблицы маршрутизации
Для просмотра таблицы маршрутизации используйте объект route и команду show:
12. Добавление маршрута
Синтаксис добавления нового маршрута в таблицу маршрутизации такой:
$ ip route add подсеть / маска via шлюз
Вместо шлюза можно указать сетевой интерфейс с помощью которого надо отправлять пакеты:
$ ip route add подсеть / маска dev устройство
Например, добавим новый маршрут для сети через тот же IP адрес:
sudo ip route add 169.255.0.0 via 169.254.19.153
Или можно указать сетевой интерфейс через который надо отправлять пакеты для определённой сети:
sudo ip route add 169.255.0.0 dev enp0s3
13. Удаление маршрута
Удалить маршрут можно командой с аналогичным синтаксисом, только вместо add надо использовать del:
sudo ip route del 169.255.0.0 via 169.254.19.153
Выводы
Вот и подошла к завершению наша статья. Надеюсь, утилита ip Linux уже не кажется такой непонятной. Если у вас есть вопросы или хотите предложить ещё какие-нибудь примеры, пишите комментарии!
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.
Как настроить сеть на Linux Mint
Всегда рекомендуется выполнить некоторые важные настройки сети во время работы с операционной системой, прежде чем использовать Интернет на любом устройстве. Эти настройки сделаны, чтобы гарантировать, что ваш Интернет работает без сбоев и со всеми протоколами, которые вы хотите. Кроме того, если у вас медленный Интернет или у вас возникают проблемы с подключением к нему, вы всегда должны проверять параметры сети, чтобы убедиться, что что-то не так.
Точно так же, как сетевой администратор, ваша основная ответственность заключается в отслеживании нескольких действий в сети, а конфигурация сети позволяет им отслеживать любые изменения, влияющие на производительность сети. Администраторы могут сократить время простоя сети, используя программное обеспечение для отслеживания изменений. Если обновление системы снижает производительность сети, вы можете вернуться к предыдущей конфигурации, которая работала нормально.
Linux Mint хорошо известен своей мощностью, надежностью и безопасностью. Конфигурация сети — это комплексный процесс, который включает в себя настройку средств управления сетью, управление сетевым трафиком и эксплуатацию сети для облегчения сетевого взаимодействия. В этой статье будут рассмотрены некоторые основные детали, необходимые для настройки вашей сети.
Как найти свой IP-адрес на Linux Mint
Перед настройкой сети лучше сначала узнать свой собственный IP-адрес, чтобы потом при необходимости сбросить его, набрав.
После ввода этой команды вы найдете свой IP-адрес во второй точке, которая является портом конфигурации сети ens33, который можно увидеть на изображении.
Вы также можете проверить свой IP-адрес в сетевых настройках, для чего вам нужно щелкнуть меню и выбрать Сетевые настройки.
Как выполнить настройку сети в Linux Mint с помощью настроек сети
Вашей системе будет назначен IP-адрес по умолчанию, который в настоящее время доступен из сетевого пула. Вы можете настроить свою сеть, зайдя в настройки сети, которые вы можете найти в строке меню, как показано ниже. После этого вам нужно щелкнуть в правом нижнем углу «значок шестеренки», чтобы открыть для вас настройки сети.
Затем вам нужно щелкнуть вкладку IPv4, и там вы увидите, что ваша сеть по умолчанию настроена на «Протокол динамического управления хостом (DHCP)», и там также можно увидеть некоторые другие параметры.
DHCP используется для автоматического предоставления IP-адреса, но если вы хотите настроить параметры сети вручную, вам необходимо установить для него значение «Вручную» в раскрывающемся меню.
Теперь вы можете настроить свою сеть вручную и вам нужно будет указать значения для сетевого адреса. Например, значения, которые мы выбрали в нашем случае, указаны ниже.
Адрес: 192.168.114.100
Сетевая маска: 255.255.255.0
Шлюз: 192.168.114.2
DNS: 8.8.8.8
После ввода требуемых значений необходимо нажать кнопку «Применить», после чего будут применены новые настройки.
Теперь проверьте новые настройки, и для этого вам нужно снова открыть настройки сети, и там вы увидите эту новую информацию:
Как настроить вашу сеть с помощью утилиты NMTUI
Вы можете проверить свой текущий сетевой IP-адрес на терминале или в сетевых настройках. Чтобы проверить это с терминала, вы можете ввести:
Чтобы настроить вашу сеть с помощью утилиты NMTUI, вам необходимо использовать приведенную ниже команду:
В терминале откроется новое окно с несколькими опциями, как показано ниже. Вам нужно выбрать опцию «Редактировать соединение», чтобы настроить сеть.
После выбора этой опции вам необходимо выбрать сетевое соединение и щелкнуть вкладку «Редактировать».
Выберите вкладку IPv4 и затем настройки «Вручную»:
Это откроет для вас все необходимые настройки, которые требуются для настройки сети. Здесь мы реализовали те же сетевые настройки, которые упоминались в предыдущей части, как показано ниже.
После применения настроек следующий шаг — вернуться в главное меню и выбрать опцию «Активировать соединение»:
Чтобы активировать вновь примененные настройки, вам необходимо деактивировать сетевое соединение, а затем снова активировать его.
Это обновит ваши сетевые настройки, чтобы можно было применить новые настройки, а позже вы также можете проверить это, снова набрав ранее обсужденную команду в терминале.
Как сбросить настройки сети
Чтобы сбросить все сетевые настройки, используйте:
«INPUT» и «OUTPUT» — это цепочки, состоящие из правил для входящих и исходящих соединений, где опция «F» предназначена для сброса:
И опция «P», чтобы установить политику для целевой цепочки:
Затем выполните команду, указанную ниже:
А теперь перезагрузите вашу систему, используя:
Как настроить входящий и исходящий трафик
Если вы хотите настроить свою сеть, чтобы разрешить или заблокировать ее для связи с внешним миром, вы можете сделать это, настроив брандмауэр. Один из способов сделать это — установить несложный брандмауэр (UFW), и вы можете сделать это, набрав.
После его установки вам необходимо убедиться, что ваш брандмауэр включен и в настоящее время активен, набрав
Теперь, если вы хотите разрешить или запретить какой-либо конкретный порт для связи, вы можете сделать это, набрав
А позже вы можете проверить, были ли эти правила реализованы или нет, набрав еще раз.
Таким же образом вы также можете отключить любой сетевой порт, набрав.
Вывод
После того, как вы настроите сетевое соединение в соответствии с вашими предпочтениями, у вас не будет никаких проблем с использованием Интернета на вашем Linux Mint. Кроме того, если вы когда-нибудь почувствуете, что какая-либо из ваших конфигураций была испорчена, вы всегда можете вернуться к настройкам сети и исправить проблему так же, как мы описали в этой статье. Следуя этому подходу, вы не только улучшите свои знания в области сетевых технологий, но также сможете самостоятельно решить большинство проблем, связанных с сетью.