Настройка сети в Rocky Linux

Содержание
Введение
Настройка сети
ONBOOT=yes: Включать интерфейс при загрузке
ip -r: Узнать IP шлюза (gateway)
Установка ifconfig
Установить статический IP адрес
Изменить IP адрес
Изменить маску
Добавить IP адрес на интерфейс
Сбросить существующий dhcp IP адрес
Открытые порты
hostname
NetworkManager
network
Виртуальный интерфейс
Создать новый сетевой адаптер
Ошибки
Статьи про Rocky

Введение

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

«Основы компьютерных сетей»

Настройка сети

Чтобы изучить подключения выполните одну из команд:

Например:

nmcli conn show

NAME UUID TYPE DEVICE enp0s3 64486a76-a4b0-4693-9110-205da942c9c5 ethernet enp0s3 enp0s8 fc26857f-4cb0-3756-a7fa-95ec246b3981 ethernet enp0s8

Если какой-то интерфейс, например enp0s3, выключен у него в столбце DEVICE будет стоять --

Обычно неактивный интерфейс выделен серым цветом а активный зелёным.

NAME UUID TYPE DEVICE enp0s3 64486a76-a4b0-4693-9110-205da942c9c5 ethernet -- enp0s8 fc26857f-4cb0-3756-a7fa-95ec246b3981 ethernet enp0s8

Включить интерфейс можно командой

nmcli conn up enp0s3

Включать интерфейс при загрузке

Чтобы не включать сетевой интерфейс каждый раз вручную можно в настройках прописать ONBOOT=yes

Как вариант можно перейти в

/etc/sysconfig/network-scripts/ifcfg-enp0s3

И отредактировать файлы ifcfg-ИМЯ_ИНТЕРФЕЙСА - например ifcfg-enp0s3 с помощью vi

sudo vi /etc/sysconfig/network-scripts/ifcfg-enp0s3

Либо под root использовать sed

sudo sed -i s/ONBOOT=no/ONBOOT=yes/ /etc/sysconfig/network-scripts/ifcfg-enp0s3

Если команда выше вам не до конца понятна - изучите статью «Основы sed»

Проверить получилось ли изменить ONBOOT на yes можно командой

grep ONBOOT !$

Подробную информацию о каждом сетевом интерфейсе можно получить выполнив nmcli connection show имя_интерфейса

Например:

nmcli connection show enp0s3

connection.id: enp0s3 connection.uuid: 47685cbb-ee41-4294-9b6d-efaf7494588e connection.stable-id: -- connection.type: 802-3-ethernet connection.interface-name: enp0s3 …

Полный вывод можно изучить здесь

Установка статического IP

nmcli conn show

NAME UUID TYPE DEVICE enp0s3 64486a76-a4b0-4693-9110-205da942c9c5 ethernet enp0s3 enp0s8 fc26857f-4cb0-3756-a7fa-95ec246b3981 ethernet enp0s8

Настроим статический ip для enp0s8

Настройки сети хранятся в директории

/etc/sysconfig/network-scripts/

Отредактировать нужно файл ifcfg-enp0s8

Основные параметры:
TYPE - тип соединения, проводное (Ethernet), беспроводное(Wired) и т д;
BOOTPROTO - способ получения IP адреса, static, dhcp или none;
NAME - имя соединения;
DEVICE - имя сетевого интерфейса;
ONBOOT - необходимо ли запускать при старте системы;
IPADDR - IP адрес, который будет использован для этого компьютера;
GATEWAY - шлюз для доступа к интернету;
NETMASK - маска сети;
DNS1 - сервер для разрешения доменных имен DNS.

sudo vi /etc/sysconfig/network-scripts/ifcfg-enp0s8

TYPE=Ethernet PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=dhcp DEFROUTE=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_FAILURE_FATAL=no IPV6_ADDR_GEN_MODE=stable-privacy NAME=enp0s8 UUID=939a0551-f5b5-46d8-87fe-24e5e7b1a0c1 DEVICE=enp0s8 ONBOOT=yes

Изменить IP

С помощью Iproute2

Пример присвоения интерфейсу enp3s0 IP адреса 10.0.2.16/24

sudo ip addr add 10.0.2.16/24 dev enp3s0

С помощью ifconfig

Сперва нужно установить пакет содержащий ifconfig - по инструкции

Менять IP нужно командой

sudo ifconfig enp0s8 192.168.56.111

Вместо enp0s8 введите нужный интерфейс

Вместо 192.168.56.111 введите IP, который хотите установить

Если нужно поменять ещё и маску подсети - выполните

sudo ifconfig enp0s8 192.168.56.111 netmask 255.255.255.0

Изменить маску

Если нужно поменять только маску подсети - выполните

sudo ifconfig enp0s8 netmask 255.255.255.0

Добавить IP

Добавить IP на интерфейс можно командой

ip addr add 172.17.67.3/16 dev enp0s8

IP адрес добавлен динамически - то есть после перезагрузки он пропадёт

Удалить этот IP адрес можно командой

ip addr del 172.17.67.3/16 dev enp0s8

Сбросить IP

Если IP получен по DHCP можно освободиться от него выполнив

sudo dhcp -r enp0s8

Вместо enp0s8 введите имя нужного адаптера

Узнать Gateway

Чтобы узнать текущий IP адрес шлюза (gateway) выполните

ip r

default via 10.0.2.1 dev enp0s3 proto dhcp metric 100

IP адрес шлюза 10.0.2.1

Установка ifconfig

yum provides ifconfig

или

yum whatprovides ifconfig

Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: ftp.funet.fi * epel: www.nic.funet.fi * extras: ftp.funet.fi * updates: ftp.funet.fi base/7/x86_64/filelists_db | 7.2 MB 00:00:01 epel/x86_64/filelists_db | 12 MB 00:00:03 extras/7/x86_64/filelists_db | 224 kB 00:00:00 ssh-products/x86_64/filelists_db | 89 kB 00:00:00 updates/7/x86_64/filelists_db | 3.4 MB 00:00:01 net-tools-2.0-0.25.20131004git.el7.x86_64 : Basic networking tools Repo : base Matched from: Filename : /sbin/ifconfig

ifconfig входит, например, в состав net-tools

Установим net-tools

sudo yum install net-tools

Изображение баннера

Открытые порты

Список открытых портов

ss -tulpn

Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port

Выдаст все порты, поэтому если нужно проверить какой-то определённый удобно применить grep

ss -tulpn | grep 1234

tcp LISTEN 0 128 [::]:1234 [::]:* users:(("andrei",pid=5226,fd=14))

Открыть порт

Чтобы открыть порт XXXX в firewall выполните

sudo firewall-cmd --add-port=XXXX/tcp --permanent
sudo firewall-cmd --reload

Подробности в статье rocky firewall

hostname

Шаг 1. Проверка текущего hostname

Чтобы получить информацию о хосте выполните

hostnamectl

Static hostname: localhost.localdomain Icon name: computer-vm Chassis: vm Machine ID: a714bee8007d114a84177dbb15072f2e Boot ID: b02d9498c1764a338c781672aac1be29 Virtualization: kvm Operating System: rocky Linux 7 (Core) CPE OS Name: cpe:/o:rocky:rocky:7 Kernel: Linux 3.10.0-1160.el7.x86_64 Architecture: x86-64

Нужная информация находится в первой строке

Static hostname: localhost.localdomain

Шаг 2. Смена hostname

Так как rocky 7 поддреживает только Fully Qualified Domain Names (FQDNs), советую тщательно проверить hostname, который вы планируете использовать.

Допустимые значения:

Выполните

hostnamectl set-hostname my.new-hostname.server

NetworkManager

Проверить статус можно командой

systemctl status NetworkManager

NetworkManager.service - Network Manager Loaded: loaded (/usr/lib/systemd/system/NetworkManager.service; enabled; vendor preset: enabled) Active: active (running) since Thu 2021-02-18 17:30:13 EET; 1 months 30 days ago Docs: man:NetworkManager(8) Main PID: 841 (NetworkManager) Tasks: 5 CGroup: /system.slice/NetworkManager.service ├─ 841 /usr/sbin/NetworkManager --no-daemon └─9599 /sbin/dhclient -d -q -sf /usr/libexec/nm-dhcp-helper -pf /var/run/dhclient-ens192.pid -lf /var/lib/NetworkManager/dhclient-5c2584c5-7d87-4826-ba2a-79713eb62a9a-ens192.lease -cf /var/lib/Net... Apr 20 11:25:15 localhost.localdomain NetworkManager[841]: <info> [1618907115.2914] dhcp4 (ens192): gateway 10.1.103.254 Apr 20 11:25:15 localhost.localdomain NetworkManager[841]: <info> [1618907115.2914] dhcp4 (ens192): lease time 7200 Apr 20 11:25:15 localhost.localdomain NetworkManager[841]: <info> [1618907115.2915] dhcp4 (ens192): nameserver '10.10.10.1' Apr 20 11:25:15 localhost.localdomain NetworkManager[841]: <info> [1618907115.2915] dhcp4 (ens192): nameserver '10.1.0.2' Apr 20 11:25:15 localhost.localdomain NetworkManager[841]: <info> [1618907115.2915] dhcp4 (ens192): domain name 'eth1.ru' Apr 20 11:25:15 localhost.localdomain NetworkManager[841]: <info> [1618907115.2915] dhcp (ens192): domain search 'eth1.ru.' Apr 20 11:25:15 localhost.localdomain NetworkManager[841]: <info> [1618907115.2915] dhcp (ens192): domain search 'hel.fi.eth1.ru.' Apr 20 11:25:15 localhost.localdomain NetworkManager[841]: <info> [1618907115.2915] dhcp (ens192): domain search 'ad.eth1.ru.' Apr 20 11:25:15 localhost.localdomain NetworkManager[841]: <info> [1618907115.2915] dhcp4 (ens192): state changed bound -> bound Apr 20 11:25:15 localhost.localdomain dhclient[9599]: bound to 10.1.102.211 -- renewal in 2903 seconds.

network

Проверить статус можно командой

systemctl status network

network.service - LSB: Bring up/down networking Loaded: loaded (/etc/rc.d/init.d/network; bad; vendor preset: disabled) Active: active (exited) since Tue 2021-04-20 12:57:04 EEST; 7min ago Docs: man:systemd-sysv-generator(8) Process: 13493 ExecStop=/etc/rc.d/init.d/network stop (code=exited, status=0/SUCCESS) Process: 13652 ExecStart=/etc/rc.d/init.d/network start (code=exited, status=0/SUCCESS) Apr 20 12:57:03 localhost.localdomain systemd[1]: Starting LSB: Bring up/down networking... Apr 20 12:57:04 localhost.localdomain network[13652]: Bringing up loopback interface: [ OK ] Apr 20 12:57:04 localhost.localdomain network[13652]: Bringing up interface ens192: Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/5) Apr 20 12:57:04 localhost.localdomain network[13652]: [ OK ] Apr 20 12:57:04 localhost.localdomain systemd[1]: Started LSB: Bring up/down networking.

Виртуальный интерфейс

Виртуальный интерфейс - это alias к существующему интерфейсу. Допустим у вас есть ens192

Выполните

cp /etc/sysconfig/network-scripts/ens192 /etc/sysconfig/network-scripts/ens192:0
vi /etc/sysconfig/network-scripts/ens192:0

Поменяйте там что-то, например поставьте другой IP из той же подсети

IPADDR=10.1.10.2

Перезагрузите network

systemctl restart network

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

Создать новый сетевой адаптер

Подробный разбор этого действия вы можете изучить в статье «Создать новый интерфейс»

Список адаптеров

Получить список адаптеров, в том числе отключенных.

nmcli d

DEVICE TYPE STATE CONNECTION wlp0s20f3 wifi connected SSH-office docker0 bridge connected docker0 p2p-dev-wlp0s20f3 wifi-p2p disconnected -- enp0s31f6 ethernet unavailable -- vboxnet0 ethernet unmanaged -- lo loopback unmanaged --

Ошибки и предупреждения

sudo systemctl restart networking

Job for network.service failed because the control process exited with error code. See "systemctl status network.service" and "journalctl -xe" for details.

systemctl status network.service

network.service - LSB: Bring up/down networking Loaded: loaded (/etc/rc.d/init.d/network; bad; vendor preset: disabled) Active: failed (Result: exit-code) since Tue 2021-01-19 19:09:42 EET; 7s ago Docs: man:systemd-sysv-generator(8) Process: 2448 ExecStop=/etc/rc.d/init.d/network stop (code=exited, status=0/SUCCESS) Process: 8268 ExecStart=/etc/rc.d/init.d/network start (code=exited, status=1/FAILURE) Jan 19 19:09:42 server1.example.com network[8268]: RTNETLINK answers: File exists Jan 19 19:09:42 server1.example.com network[8268]: RTNETLINK answers: File exists Jan 19 19:09:42 server1.example.com network[8268]: RTNETLINK answers: File exists Jan 19 19:09:42 server1.example.com network[8268]: RTNETLINK answers: File exists Jan 19 19:09:42 server1.example.com network[8268]: RTNETLINK answers: File exists Jan 19 19:09:42 server1.example.com network[8268]: RTNETLINK answers: File exists Jan 19 19:09:42 server1.example.com systemd[1]: network.service: control process exited, code=exited status=1 Jan 19 19:09:42 server1.example.com systemd[1]: Failed to start LSB: Bring up/down networking. Jan 19 19:09:42 server1.example.com systemd[1]: Unit network.service entered failed state. Jan 19 19:09:42 server1.example.com systemd[1]: network.service failed.

Полный вывод команды (вернуться в статью)

nmcli connection show enp0s3

connection.id: enp0s3 connection.uuid: 47685cbb-ee41-4294-9b6d-efaf7494588e connection.stable-id: -- connection.type: 802-3-ethernet connection.interface-name: enp0s3 connection.autoconnect: no connection.autoconnect-priority: 0 connection.autoconnect-retries: -1 (default) connection.multi-connect: 0 (default) connection.auth-retries: -1 connection.timestamp: 1624022292 connection.read-only: no connection.permissions: -- connection.zone: -- connection.master: -- connection.slave-type: -- connection.autoconnect-slaves: -1 (default) connection.secondaries: -- connection.gateway-ping-timeout: 0 connection.metered: unknown connection.lldp: default connection.mdns: -1 (default) connection.llmnr: -1 (default) connection.wait-device-timeout: -1 802-3-ethernet.port: -- 802-3-ethernet.speed: 0 802-3-ethernet.duplex: -- 802-3-ethernet.auto-negotiate: no 802-3-ethernet.mac-address: -- 802-3-ethernet.cloned-mac-address: -- 802-3-ethernet.generate-mac-address-mask:-- 802-3-ethernet.mac-address-blacklist: -- 802-3-ethernet.mtu: auto 802-3-ethernet.s390-subchannels: -- 802-3-ethernet.s390-nettype: -- 802-3-ethernet.s390-options: -- 802-3-ethernet.wake-on-lan: default 802-3-ethernet.wake-on-lan-password: -- ipv4.method: auto ipv4.dns: -- ipv4.dns-search: -- ipv4.dns-options: -- ipv4.dns-priority: 0 ipv4.addresses: -- ipv4.gateway: -- ipv4.routes: -- ipv4.route-metric: -1 ipv4.route-table: 0 (unspec) ipv4.routing-rules: -- ipv4.ignore-auto-routes: no ipv4.ignore-auto-dns: no ipv4.dhcp-client-id: -- ipv4.dhcp-iaid: -- ipv4.dhcp-timeout: 0 (default) ipv4.dhcp-send-hostname: yes ipv4.dhcp-hostname: -- ipv4.dhcp-fqdn: -- ipv4.dhcp-hostname-flags: 0x0 (none) ipv4.never-default: no ipv4.may-fail: yes ipv4.dad-timeout: -1 (default) ipv4.dhcp-vendor-class-identifier: -- ipv4.dhcp-reject-servers: -- ipv6.method: auto ipv6.dns: -- ipv6.dns-search: -- ipv6.dns-options: -- ipv6.dns-priority: 0 ipv6.addresses: -- ipv6.gateway: -- ipv6.routes: -- ipv6.route-metric: -1 ipv6.route-table: 0 (unspec) ipv6.routing-rules: -- ipv6.ignore-auto-routes: no ipv6.ignore-auto-dns: no ipv6.never-default: no ipv6.may-fail: yes ipv6.ip6-privacy: -1 (unknown) ipv6.addr-gen-mode: eui64 ipv6.ra-timeout: 0 (default) ipv6.dhcp-duid: -- ipv6.dhcp-iaid: -- ipv6.dhcp-timeout: 0 (default) ipv6.dhcp-send-hostname: yes ipv6.dhcp-hostname: -- ipv6.dhcp-hostname-flags: 0x0 (none) ipv6.token: -- proxy.method: none proxy.browser-only: no proxy.pac-url: -- proxy.pac-script: -- GENERAL.NAME: enp0s3 GENERAL.UUID: 47685cbb-ee41-4294-9b6d-efaf7494588e GENERAL.DEVICES: enp0s3 GENERAL.IP-IFACE: enp0s3 GENERAL.STATE: activated GENERAL.DEFAULT: no GENERAL.DEFAULT6: no GENERAL.SPEC-OBJECT: -- GENERAL.VPN: no GENERAL.DBUS-PATH: /org/freedesktop/NetworkManager/ActiveConnection/1 GENERAL.CON-PATH: /org/freedesktop/NetworkManager/Settings/1 GENERAL.ZONE: -- GENERAL.MASTER-PATH: -- IP4.ADDRESS[1]: 192.168.56.121/24 IP4.GATEWAY: -- IP4.ROUTE[1]: dst = 192.168.56.0/24, nh = 0.0.0.0, mt = 100 DHCP4.OPTION[1]: dhcp_lease_time = 600 DHCP4.OPTION[2]: dhcp_server_identifier = 192.168.56.100 DHCP4.OPTION[3]: expiry = 1624022892 DHCP4.OPTION[4]: ip_address = 192.168.56.121 DHCP4.OPTION[5]: requested_broadcast_address = 1 DHCP4.OPTION[6]: requested_domain_name = 1 DHCP4.OPTION[7]: requested_domain_name_servers = 1 DHCP4.OPTION[8]: requested_domain_search = 1 DHCP4.OPTION[9]: requested_host_name = 1 DHCP4.OPTION[10]: requested_interface_mtu = 1 DHCP4.OPTION[11]: requested_ms_classless_static_routes = 1 DHCP4.OPTION[12]: requested_nis_domain = 1 DHCP4.OPTION[13]: requested_nis_servers = 1 DHCP4.OPTION[14]: requested_ntp_servers = 1 DHCP4.OPTION[15]: requested_rfc3442_classless_static_routes = 1 DHCP4.OPTION[16]: requested_root_path = 1 DHCP4.OPTION[17]: requested_routers = 1 DHCP4.OPTION[18]: requested_static_routes = 1 DHCP4.OPTION[19]: requested_subnet_mask = 1 DHCP4.OPTION[20]: requested_time_offset = 1 DHCP4.OPTION[21]: requested_wpad = 1 DHCP4.OPTION[22]: subnet_mask = 255.255.255.0 IP6.ADDRESS[1]: fe80::a00:27ff:fe6c:cb2b/64 IP6.GATEWAY: -- IP6.ROUTE[1]: dst = fe80::/64, nh = ::, mt = 100 IP6.ROUTE[2]: dst = ff00::/8, nh = ::, mt = 256, table=255

Похожие статьи
Настройка сети в Rocky
Rocky
Создать новый интерфейс
hostname
Компьютерные сети
Firewall
iftop: Мониторинг сети
nethogs: Мониторинг сети
tc: Контроль за трафиком
iperf: Измерение скорости сети
uuidgen: uuid для сетевого интерфейса
netstat
ip
SCP: обмен файлами;
SSH: удалённый доступ
Сокеты в C

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

Подпишитесь на Telegram канал @aofeed чтобы следить за выходом новых статей и обновлением старых

Перейти на канал

@aofeed

Задать вопрос в Телеграм-группе

@aofeedchat

Контакты и сотрудничество:
Рекомендую наш хостинг beget.ru
Пишите на info@urn.su если Вы:
1. Хотите написать статью для нашего сайта или перевести статью на свой родной язык.
2. Хотите разместить на сайте рекламу, подходящую по тематике.
3. Реклама на моём сайте имеет максимальный уровень цензуры. Если Вы увидели рекламный блок недопустимый для просмотра детьми школьного возраста, вызывающий шок или вводящий в заблуждение - пожалуйста свяжитесь с нами по электронной почте
4. Нашли на сайте ошибку, неточности, баг и т.д. ... .......
5. Статьи можно расшарить в соцсетях, нажав на иконку сети: