В данной статье разберем, как настроить или изменить уже имеющиеся настройки локальной сети на CentOS 7.
Вообще первоначальная настройка сети производилась, когда осуществлялась установка CentOS 7, но если ставили не вы или вам надо что то изменить, то данная статья точно для вас!
Содержание:
1. Как настроить статический IP-адрес в CentOS 7
2. Как настроить адрес по DHCP в CentOS 7
3. Как настроить DNS в CentOS 7
4. Как настроить основной шлюз в CentOS 7
5. Как изменить hostname в CentOS 7
6. Как перезапустить сеть в CentOS 7
7. System config network tui в CentOS 7
# Как настроить статический IP-адрес в CentOS 7
Итак, вы хотите посмотреть настройки сети, но вы устанавливали сборку "minimal" то по привычному запросу ifconfig вы в ответ получите вот такое:
-bash: ifconfig: command not found
Это говорит нам о том, что у нас нет такого пакета. Для работы его работы и прочими сетевыми утилитами нужно установить пакет net-tools. Для этого выполним следующую команду:
# yum -y install net-tools.x86_64Теперь попробуем снова ввести ifconfig:
# ifconfigЕсли вы не хотите устанавливать дополнительные пакеты или на данном этапе у вас не работает сеть/интернет, то можно воспользоваться командой ip с параметром addr:
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 172.16.0.160 netmask 255.255.255.0 broadcast 192.168.146.255 inet6 fe80::250:56ff:fe24:ccd6 prefixlen 64 scopeid 0x20<link> ether 00:50:56:24:cc:d6 txqueuelen 1000 (Ethernet) RX packets 210 bytes 19072 (18.6 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 71 bytes 11531 (11.2 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 0 (Local Loopback)
RX packets 4 bytes 340 (340.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 4 bytes 340 (340.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
# ip addrТут мы увидели наши параметры, название нашей сетевой карты. В моем случае - eno16777736, и IP адрес.
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever inet6 ::1/128 scope host
valid_lft forever preferred_lft forever 2: eno16777736: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:50:56:24:cc:d6 brd ff:ff:ff:ff:ff:ff inet 172.16.0.160/24 brd 192.168.146.255 scope global dynamic eno16777736 valid_lft 1672sec preferred_lft 1672sec inet6 fe80::250:56ff:fe24:ccd6/64 scope link valid_lft forever preferred_lft forever
Теперь давайте ее отредактируем. Допустим, нам нужно сменить или установить ip адрес. Для этого переходим в директорию /etc/sysconfig/network-scripts и открываем на редактирование файл ifcfg-eno16777736. Этот файл имеет примерно следующее содержание:
# cat ifcfg-eno16777736
TYPE=Ethernet BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=eno16777736
UUID=dc1636be-5281-4a07-8681-fcdc8b161c8c
DEVICE=eno16777736
ONBOOT=no
PEERDNS=yes
PEERROUTES=yes
Для установки статического IP адреса нам необходимо на строчке BOOTPROTO установить BOOTPROTO=none
и дописать:
Указать ДНС:
DNS1=8.8.8.8
Прописываем IP:
IPADDR0=172.16.0.30
Указываем нужную маску:
PREFIX0=24
Прописываем шлюз по умолчанию:
GATEWAY0=172.16.0.1
И чтобы у нас сетевая карта "поднималась" при запуске ОС, необходимо в этом файле найти параметр ONBOOT и прописать ему yes.
В итоге у нас должно получится что то типа этого:
Для немедленного применения изменений перезапустим сеть:
# /etc/init.d/network restart
Проверяем, все ли мы сделали верно:
# ifconfigВидим что наши параметры применились. Значит все было сделано верно.
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 172.16.0.30 netmask 255.255.255.0 broadcast 172.16.0.255 ether 00:50:56:24:cc:d6 txqueuelen 1000 (Ethernet) RX packets 5039 bytes 360189 (351.7 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1015 bytes 181656 (177.3 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
# Как настроить адрес по DHCP в CentOS 7
Предположим что у вас сетевая карта настроена на статический IP, а вы хотите получать настройки по DHCP. Тут будем действовать в обратном порядке. переходим в папку /etc/sysconfig/network-scripts и открываете файл на редактирование с названием вашей сетевой картой. Название сетевой можно посмотреть командой ifconfig или ip addr. Находим там и удаляем параметры DNS, IPADDR, PREFIX, GATEWAY а в параметре BOOTPROTO указываем значение «dhcp».Для немедленного применения изменений перезапустим сеть:
# /etc/init.d/network restart
Проверяем, все ли мы сделали верно:
# Как настроить DNS в CentOS 7
Производить настройки DNS будет все в том же файле/etc/sysconfig/network-scripts/название_вашей_сетевой_картыВ данный файл можно добавить столько DNS серверов, сколько требуется. Например:
DNS1=172.16.0.1DNS2=8.8.8.8
DNS3=8.8.4.4
Сохраняем файл и перезапускаем сеть.
# Как настроить основной шлюз в CentOS 7
Проверим, какой у нас шлюз по умолчанию установлен в системе:# netstat -nr
Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface
0.0.0.0 172.16.0.1 0.0.0.0 UG 0 0 0 eno16777736 172.16.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eno16777736
Строка с Destination 0.0.0.0 определяет адрес шлюза. Если у вас ее нет, либо в поле Gateway установлен неверный шлюз, то можно это изменить. Устанавливаем шлюз по-умолчанию:
route add default gw 172.16.0.1
# Как изменить hostname в CentOS 7
Если вы не сменили при установке Hostname или вы хотите его изменить, то сделать это совсем не сложно. Для начала давайте проверим, какой hostname у нас установлен:# hostname
centos.home
В моем случае это centos.home. Допустим мы хотим сделать имя: superserver.work, для этого необходимо отредактировать фай /etc/hostname
mcedit /etc/hostname
После того, как изменили имя, давайте проверим, что у нас получилось:
# hostname
superserver.work
Как видим, имя сменилось. Значит мы все сделали верно. Как видите, это сделать не так сложно.
P.S.: Для смены hostname перезагрузка не требуется.
# Как перезапустить сеть в CentOS 7
Я уже выше несколько раз описывал как это сделать, но повторюсь еще раз. Чтобы применить новые настройки сетевой карты, не обязательно перезагружать весь сервер. Для этого можно просто перезапустить сетевые интерфейсы следующей командой:
# /etc/init.d/network restart
Выполнив данную команду сетевые интерфейсы перезапускаются и считывают настройки из их конфигов.
# System config network tui в CentOS 7
Так же для управления сетевыми интерфейсами и настройками в CentOS можно воспользоваться графической утилитой nmtui. Это сделать очень просто. Достаточно запустить ее в консоли:
# nmtui
Главный экран:
Допустим, мы хотим изменить IP адрес через графический интерфейс, выбираем "Изменить соединение"
Выбираем сетевое подключение, в моем случае оно одно, и нажимаем "Изменить ..."
Меняем настройки, которые вы хотите изменить и нажимаем "ОК".
Вот так просто через графический интерфейс можно настраивать сеть. Если по какой то причине у вас не установлен данный пакет, то установить его можно следующей командой:
yum install NetworkManager-tui
Заключение
В данной статье я постарался подробно рассмотреть основные первоначальные настройки сети в CentOS 7. Если у вас возникли какие-либо трудности, задавайте их в комментарии, я постараюсь ответить на все ваши вопросы.
также после настройки нужно перезапустить демон network: service restart network
"Я уже выше несколько раз описывал как это сделать, но повторюсь еще раз. Чтобы применить новые настройки сетевой карты, не обязательно перезагружать весь сервер. Для этого можно просто перезапустить сетевые интерфейсы следующей командой: # /etc/init.d/network restart" Есть же в статье описание о перезагрузке
А как Вы планируете скачать пакет net-tools, если у Вас не работает сеть?
Подразумеватся что адрес получен по DHCP. Ниже есть сноска, что есть другая команда, которая есть в сборке
Я много раз задавал вопросы на разных сайтах, но ответа не получил. У меня две проблемы с сервером на CentOS 7, 1. Периодически, ни с того, ни с сего, пропадает доступ к ресурсам сервера, через Samba из рабочей станции под Linux, из Windows в это время доступ есть но очень затянутый, примерно 20 - 30 секунд, против 0,5 секунды, когда проблемы нет. Когда этой проблемы нет, соединение с сервером, через Putty происходит за 1 - 2 секунды, когда проблема появляется, предложение ввести логин и пароль появляется, через 40 секунд, когда проблемы нет, Midnight Commander удалённо запускается примерно 1 секунду, когда проблема появляется, через 40 секунд. 2. Периодически CentOS переводит примонтированные диски в режим "Только чтение", затем, через несколько дней, полный доступ восстанавливается. без всякого вмешательства. Установил на USB_HDD Linux Ubuntu18.04.2 server, все проблемы исчезли. Все настройки и конфигурационные файлы просто перенёс из CentOS в Ubuntu. Если кто-то может помочь, помогите разобраться, если нужна дополнительная информация, сообщите, пришлю.
Добрый день! 1. В первую очередь необходимо посмотреть что происходит в эти моменты на самом сервере. htop или atop запускать и смотреть состояние загрузки системы, память, состояние hdd, на котором установлена система. Так же смотреть, возможно запускаются какие-то процессы, при которых возникает данная проблема. Так что просто поверхностно не решишь эту проблему, по одному такому описанию, нужно "копать". 2. Вот с таким не сталкивался лично я ни разу, возможно кто-то из посетителей сайта сможет подсказать что то.
Вы чё совсем? Если вы не можете посмотреть настройки сети без ifconfig, то вам не надо писать статьи про настройки сети в CentOS/RHEL/Fedora.
Читайте внимательнее, в статье указано как посмотреть настройки сети без установки пакета net-tools - сразу начиная со слов "Если вы не хотите устанавливать дополнительные пакеты..."