Если адаптер находится в статусе DOWN и в ОС отсутствуют пакеты netctl, networkmanager, временно настроить сеть (до перезагрузки ОС) можно следующим образом:
1. Выводим текущие сетевые интерфейсы:
ip link show
2. Поднимаем интерфейс (в нашем случае "ens33"):
sudo ip link set dev ens33 up
3. Настройте конфигурацию TCP/IP, воспользуйтесь следующими командами по мере необходимости:
ip address show #Просмотр конфигурации TCP/IP
ip address flush dev ens33 #Сброс конфигурации интерфейса
ip addr add 192.168.0.5/24 broadcast + dev ens33 #Установка IP и маски
ip addr del 192.168.0.5/24 dev ens33 #Удаление IP и маски (в случае ошибки)
ip route show #Просмотр таблицы маршрутизации
ip route add default via 192.168.0.1 dev ens33 #Установка шлюза по умолчанию
ip route delete default #Удаление шлюза по умолчанию
ip route add 192.168.10.0/24 via 192.168.0.254 dev ens33 #Добавление маршрута
ip route del 192.168.10.0/24 dev ens33 #Удаление маршрута
echo "nameserver 192.168.0.1 8.8.8.8" | sudo tee /etc/resolv.conf #Добавление DNS
Конфигурирование интерфейса с помощью "netctl":
1. Установите "netctl" и "dhcpcd" в случае необходимости использования DHCP:
sudo pacman -S netctl dhcpcd
2. Скопируйте профиль для вашего интерфейса из папки с примерами:
cd /etc/netctl
sudo cp examples/ethernet-static my-network #Для статического IP
sudo cp examples/ethernet-dhcp my-network #Для DHCP
3. Отредактируйте файл:
sudo nano my-network
Укажите правильный интерфейс (в нашем примере - "ens33"), а также в случае статического адреса: ip-адрес, маску, шлюз по умолчанию, дополнительные маршруты если нужно.
С DNS могут быть следующие варианты:
- если используете параметр из файла "my-network", то вам необходимо будет запустить службу "systemd-resolved":
sudo systemctl enable --now systemd-resolved
- если будете использовать "/etc/resolv.conf" с параметром "nameserver", то оставьте параметр "DNS" закомментированным, в этом случае можно полностью отключить службы:
sudo systemctl mask systemd-resolved
sudo systemctl mask systemd-networkd
4. Запустите наш профиль и включите автозагрузку:
sudo netctl start my-network
sudo netctl enable my-network
Конфигурирование интерфейса с помощью "NetworkManager":
1. Установите NetworkManager:
sudo pacman -S networkmanager
2. Включите и запустите службу:
sudo systemctl enable --now NetworkManager
3. Сконфигурируйте сетевой интерфейс с помощью терминальной утилиты "nmtui" или в командной строке утилитой "nmcli":
Просмотр:
nmcli con show #Просмотр сетевых подключений
nmcli dev show ens33 #Просмотр активного соединения на "ens33"
nmcli con show 'Wired connection 1' #Просмотр параметров подключения
Настройки для DHCP:
nmcli con mod 'Wired connection 1' ipv4.method auto
nmcli con mod 'Wired connection 1' ipv4.addresses "" ipv4.gateway ""
nmcli con mod 'Wired connection 1' ipv4.dns ""
nmcli con mod 'Wired connection 1' ipv4.routes ""
nmcli con up 'Wired connection 1'
Настройки для статического IP:
nmcli con mod 'Wired connection 1' ipv4.addresses 192.168.0.5/24
nmcli con mod 'Wired connection 1' ipv4.gateway 192.168.0.1
nmcli con mod 'Wired connection 1' ipv4.dns "192.168.0.1 8.8.8.8"
nmcli con mod 'Wired connection 1' +ipv4.routes "192.168.10.0/24 192.168.0.254"
nmcli con mod 'Wired connection 1' ipv4.method manual
nmcli con up 'Wired connection 1'
Если запущена служба "systemd-resolved", то разрешение имен будет работать.
Если нет - используйте файл "/etc/resolv.conf":
echo "nameserver 192.168.0.1 8.8.8.8" | sudo tee /etc/resolv.conf
В случае ошибки предварительно удалите файл и повторите:
sudo rm -f /etc/resolv.conf
Конфигурирование интерфейса с помощью "systemd-networkd":
1. Убедитесь что службы "systemd-networkd" и "systemd-resolved" работают и находятся в автозапуске:
sudo systemctl enable --now systemd-networkd
sudo systemctl enable --now systemd-resolved
2. Создайте файл конфигурации (расширение ".network" обязательно):
sudo nano /etc/systemd/network/20-wired.network
Настройки для DHCP:
[Match]
Name=ens33
[Network]
DHCP=ipv4
Настройки для статического IP:
[Match]
Name=ens33
[Network]
Address=192.168.0.5/24
Gateway=192.168.0.1
DNS=192.168.0.1 8.8.8.8
[Route]
Destination=192.168.10.0/24
Gateway=192.168.0.254
Metric=10 #Опционально
3. Перезапустите службу:
sudo systemctl restart systemd-networkd
По работе с DNS ситуация такая же, как и в способе с "netctl".
Если запущена служба "systemd-resolved", то разрешение имен будет работать.
Если нет - используйте файл "/etc/resolv.conf":
echo "nameserver 192.168.0.1 8.8.8.8" | sudo tee /etc/resolv.conf
В случае ошибки предварительно удалите файл и повторите:
sudo rm -f /etc/resolv.conf
Общие советы:
1. Не используйте одновременно несколько менеджеров сетей (выберите один).
2. Для просмотра параметров пользуйтесь командами:
ip link show
ip address show
ip route show
resolvectl status