Сетевые настройки в centos 8, 7

Введение

В нашем распоряжении будет следующий сервер для настройки шлюза:

# cat /etc/redhat-release
CentOS Linux release 7.1.1503 (Core)

Использовался образ minimal для установки CentOS 7. Если вы еще не выполнили установку, рекомендую воспользоваться моим материалом на эту тему. На сервере две сетевые карты eth0 и eth1:

  • eth0 подключена к интернету
  • eth1 подключена к локальной сети вместе с компьютерами

В данной статье мы выполним необходимые предварительные настройки на сервере, включим nat, настроим firewall и установим средство мониторинга сетевой активности.

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

IPv6 и баг YUM в CentOS

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

На деле же все выглядело несколько иначе.

Понадобилось тут поставить один пакет на сервер где крутились прокси IPv6. Много прокси. Штук так 100тыщ. Так что сервер немного был под напряжением, причем со слов владельца этого хозяйства, останавливать процесс было сложно.

При попытке сказать yum install установщик начинал дико материтьсяDetermining fastest mirrorsCould not retrieve mirrorlist http://mirrorlist.centos.org/?release error was14: PYCURL ERROR 7 – “Failed to connect to 2a02:2498:1:3d:5054:ff:fed3:e91a: Network is unreachable”Error: Cannot find a valid baseurl for repo: base

и дальше сыпал ошибками, говорящими о том, что он не может получить пакеты при обращении по адресу IPv6.

Тут надо заметить, что до этого сервер работал с полгода и никаких проблем с установкой доп.пакетов не возникало. А тут вдруг что то перестал корректно работать.

Причем, при пинге указанных хостов, они резолвились IPv4 адресами, т.е гуглеDNS указанный в /etc/resolv.conf отрабатывал нормально.

Маны говорят о том, что конфиг установщика /etc/yum.conf необходимо прописать директиву использование IPv4ip_resolve=4
и возможно кому то это помогает, но только не мне, т.к ошибка оставалась как при запуске простого yum, так и с принудительным указанием конфига# yum –config=/etc/yum.conf
т.к закралась мыcль, что возможно он просто не отрабатывается.

Помимо этого перепробовал прописывать репы в hosts, менять настройки реп, но это ничего не помогало. Так что оставался единственный вариант – отрубить IPv6 на системе.
Делается это через добавление в ядро двух директивnet.ipv6.conf.all.disable_ipv6 = 1net.ipv6.conf.default.disable_ipv6 = 1
либо добавлением в /etc/sysctl.conf и его рестарте sysctl -p или же путем добавления сразу в ядро:# sysctl -w net.ipv6.conf.all.disable_ipv6 = 1# sysctl -w net.ipv6.conf.default.disable_ipv6 = 1

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

VN:F

please wait…

Rating: 1.9/10 (8 votes cast)

VN:F

Rating: -2 (from 2 votes)

IPv6 и баг YUM в CentOS, 1.9 out of 10 based on 8 ratings

Анализ сетевой активности на шлюзе в linux

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

Она отсутствует в стандартном репозитории CentOS 7. Для ее установки необходимо подключить репозиторий epel:

# yum -y install epel-release

Устанавливаем iftop на CentOS 7:

# yum -y install iftop

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

# iftop

По-умолчанию она слушает интерфейс eth0. Это внешний интерфейс шлюза, на нем все подключения будут отображены от имени самого шлюза и определить, кто же в сети занимает канал мы не сможем. Чтобы это увидеть, необходимо запустить просмотр сетевой активности на локальном интерфейсе. Сделать это не сложно, достаточно запустить iftop с параметром:

# iftop -i eth1 -P

Теперь уже гораздо интереснее. Я еще добавил параметр -P, который отображает порты, по которым проходят соединения. Посмотрим, кто больше всех загружает канал интернета:

В моем случае это пользователь с ip 192.168.10.98, на котором я запустил проверку скорости интернета с серверов Яндекса.

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

Network Manager в CentOS

В CentOS по-умолчанию имеется служба, которая управляет всеми сетевыми подключениями — NetworkManager. Она постоянно контролирует сетевые настройки и с помощью демона по управлению конфигурациями вносит соответствующие изменения в активные сетевые устройства. Она поддерживает стандартные файлы конфигураций ifcfg.

Список сетевых утилит и приложений:

Приложение Описание
NetworkManager Стандартный networking daemon
nmtui Простой текстовый интерфейс (TUI) для NetworkManager
nmcli Утилита, работающая в командной строке, которая позволяет пользователям и скриптам взаимодействовать с NetworkManager
control-center Утилита с графическим интерфейсом оболочки GNONE
nm-connection-editor GTK+ 3 приложения, необходимые для некоторых задач, не поддерживаемых control-center

Пользователи не взаимодействуют с NetworkManager в CentOS напрямую, для этого используются графические и утилиты командной строки. Одной из таких утилит является system config network tui. В Centos 8 по-умолчанию NetworkManager является рекомендованным способом по настройке сети. Все остальные способы объявлены deprecated.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector