Linux файл с настройками сети

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

Перед тем, как приступать к настройке сетевого подключения в Линукс, надо начать с того, что посмотреть — какие настройки сети используются сейчас. Для этого надо воспользоваться командой ifconfig. В информационном режиме она доступна и без прав ROOT, хотя для её полноценного использования лучше получить привилегии суперпользователя, введя команду sudo ifconfig. Результатом её работы будет список имеющихся в системе сетевых подключений и их параметров.

В разных версиях Линукс имя сетевого интерфейса может быть сокращением от Ethernet — eth0, eth1, eth2 и т.п.

На интерфейс lo — сокращение от loopback — то есть локальная петля с адресом 127.0.0.1 .
Для примера рассмотрим интерфейс Eth0.
В строке inet addr отображается текущий IP-адрес компьютера в локальной сети, подключенной к этой сетевой карте. В примере это: 192.168.1.144
Bcast — это широковещательный адрес в сети, так называемый Бродкаст(Broadcast).
Mask — это маска сети.
HWaddr — это аппаратный адрес сетевой карты, он же MAC-адрес, используемый на канальном уровне.

Информацию о текущих подключения узнали, теперь рассмотрим настройку локальной сети в Linux. Сделать это можно тремя способами:
1 — Через графическую оболочку
2 — через команду ifconfig или инструмент Network Manager
3 — через конфигурационные файлы сетевого сервиса Netork или Networking.

На мой взгляд, последний способ — самый удобный и надёжный, а значит — правильный. Чтобы настроить сеть в Линукс надо открыть файл, содержащий конфиг интерфейса. Тут всё зависит от того, какой дистрибутив Linux используется.

Вариант 1. В дистрибутивах, основанных на Debian (Ubuntu, Kubuntu и т.п.)

Файл с параметрами сетевого подключения:

Для того, чтобы изменить в linux настройки сети, файл его надо с правами root любым текстовым редактором. Например, через nano:

Для автоматического получения адресов от DHCP-сервера надо пописать следующее:

Если адрес надо прописать статически, то указываем следующее:

В этом конфиге рассмотрен пример обычной домашней сети, где адрес компьютера будет 192.168.1.2, адрес шлюза и DNS-сервера (их фукнции обычно выполняет wifi-роутер)- 192.168.1.1.

Вариант 2. RedHat-based дистрибутивы (Fedora, OpenSuse, CentOS)

Файл с настройками сети Linux:

Открываем его так же через nano или vim:

В случае автоматического получения настроек от DHCP-сервера:

IP-адреса DNS-серверов в этом случае прописываются в файле

вот пример для публичных DNS-серверов от Google:

Настройка сети в Линукс завершена. Остаётся только перезапустить сеть командой:

В качестве постскриптума расскажу как включить и выключить сеть в Linux. Делается это через всё ту же команду ifconfig. Выключить сетевую карту eth0:

Включить сетевую плату в Линуксе обратно:

Полностью остановить работу всех сетевых интерфейсов.

Включить всё назад:

Интересное по теме:

5 thoughts on “ Настройка сети в Linux ”

Не настраивается, Линукс минт 18.3 в чём засада?
enp2s0 Link encap:Ethernet HWaddr 00:16:d3:48:1d:91
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

lo Link encap:Локальная петля (Loopback)
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:886 errors:0 dropped:0 overruns:0 frame:0
TX packets:886 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:82987 (82.9 KB) TX bytes:82987 (82.9 KB)

wlp5s0 Link encap:Ethernet HWaddr 00:13:02:70:76:47
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

Читайте также:  Установка windows инструкция для чайников

wlxf46d048b327f Link encap:Ethernet HWaddr f4:6d:04:8b:32:7f
inet addr:192.168.1.72 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::99f4:be38:665a:3b0d/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:39068 errors:0 dropped:2423 overruns:0 frame:0
TX packets:24703 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:48902729 (48.9 MB) TX bytes:3037797 (3.0 MB)

Какие настройки Вы делаете — опишите подробно!

Сергей, может вы мне ответите? В общем, настраивал подключение к сети через «Менеджер сети», встроенный по умолчанию в Linux mint 18.3 Cinnamon. Настройки ставил следующие: IPv6 совсем выключил (Method: ignore). IPv4 Method:manual; Address:192.168.1.250; Netmask:250.250.250.0; Gateway 192.168.1.1; DNS servers 8.8.8.8
(Не понял где программа сохраняет эти настройки. В файле interfaces, находящемуся по адресу Файловая система/etc/network/interfaces ничего не поменялось.) IP адрес роутера определил командой ip route show. В качестве роутера стоит Asus RTN-10U. Wi-fi свисток Asus N13. Вот данные lsusb (0b05:17ab ASUSTek Computer, Inc. USB-N13 802.11n Network Adapter (rev. B1) [Realtek RTL8192CU]).
Сеть распозналась корректно и работает, но через 5 минут пропадает. Т.е. Менеджер сетей утверждает, что сеть есть и подключение хорошее, но браузер Firefox не может найти соединение. Проверил соединение с роутером коммандой Ping 192.168.1.1. Соединение отсутствует. Выключил сеть и включил через Менеджер сетей и сразу запустил проверку соединения Ping 192.168.1.1. Лазил в Интернете минут 15. Сеть держится. Возникает предположение, что Linux в определённый момент считает, что устройство бездействует и отключает сеть, если я его не спамлю ping’ом. Как это можно отрегулировать или решения нет и придётся спамить ping?

Михаил — Здравствуйте. начните с того, что укажите правильно маску — 255.255.255.0. Та, что Вы указали — 250.250.250.0 — неверная.

Источник

Ручная настройка сети в Linux

Для доступа к сетевым картам в Linux используются так называемые интерфейсы. Интерфейсы это не файлы устройств и их нет в каталоге /dev. Интерфейсы создаются динамически и не всегда связаны с сетевыми картами. Например интерфейс ppp0 — это интерфейс VPNа, организованного по протоколу PPTP, а интерфейс lo это виртуальная сетевая карта с адресом localhost (127.0.0.1). В Linux имена интерфейсов традиционно состоят из мнемонического типа интерфейса и его порядкового номера. Карты ethernet доступны через интерфейсы eth0, eth1 и т.д. В системах, использующих systemd способ именования другой — интерфейсы имеют имена вида enp2s0 (en -Ethernet, p — PCI, 2 — номер на шине) Список всех интерфейсов можно посмотреть командой ifconfig -a или ip link .

Привязка интерфейса к карте

При наличии нескольких сетевых карт возникает вопрос о порядке их нумерации. В CentOS 6 эта задача возложена на подсистему обнаружения и конфигурации устройств — udev. В системах с systemd правила именования встроены в udev, но могот быть переопределены, как написано ниже.

Конфигурационный файл переименования интерфейсов обновляется автоматически при первом обнаружении очередной сетевой карты и находится в файле /etc/udev/rules.d/70-persistent-net.rules. Файл состоит из строк такого содержания:

Видно, что нумерация опирается на аппаратный (MAC) адрес карты. Если в компьютере заменить карту, то интерфейс eth0 станет недоступным, а новая карта получит имя eth1. Если есть желание вручную назначить имена картам, то можно отредактировать этот файл, выставив желаемые соответствия между MAC адресами именами интерфейсов (возможно потребуется перезагрузка).

ifcfg

Классическая утилита конфигурации сетевых интерфейсов ifcfg

route

Настройка таблицы маршрутизации route

В современных дистрибутивах линукса на смену ifconfig и route приходит универсальная утилита ip

Адреса серверов DNS и имя локального домена вписываются в файл /etc/resolv.conf

Ручная настройка сети в ArchLinux

Для просмотра доступных сетевых интерфейсов используется команда ip link

ArchLinux использует для настройки сети systemd/netctl . Для конфигурации используются файлы профилей, которые хранятся в /etc/netctl/ . В данном каталоге есть подкаталог examples/ из которого можно копировать файлы с образцами профилей в /etc/netctl/ . Например:

Содержимое enp1s0-work после редактирования

Базовые команды netctl

Ручная настройка сети в Ubuntu

Просмотр доступных интерфейсов — ifcfg -a

Файл конфигурации интерфейсов — /etc/network/interfaces . auto — говорит о том, что интерфейс надо конфигурировать при старте системы.

После смены настроек в /etc/network/interfaces , необходимо отключить и снова включить интерфейс.

Читайте также:  Уведомление проверке windows отключить

Ручная настройка сети в CentOS 6

Общие настройки сети

Файл /etc/sysconfig/network используется стартовыми скриптами и содержит ключевые параметры — нужна ли сеть, нужно ли конфигурировать IP v6, имя компьютера. Сюда можно вписать шлюз по умолчанию, но CentOS 6 ориентируется на динамическое подкючение к сетям через WiFi и вписывает его в конфигурацию подходящего интерфейса.

Конфигурация интерфейса

Файлы в каталоге /etc/sysconfig/network-scripts с именами вида ifcfg-eth0

Интерфейс, получающий адрес по DHCP

Дополнительный IP адрес на интерфейсе eth1

Инициализация VLAN на eth1

Настройка DNS

Файл /etc/resolv.conf

Ручная настройка имен хостов файл /etc/hosts

Настройка брандмауэра

Файл /etc/sysconfig/system-config-firewall правила для настройки программой system-config-firewall

Файл /etc/sysconfig/iptables текущие правила, сохраненные на случай перезагрузки.

После ручного изменения правил их можно сохранить командой service iptables save

Источник

Настройка сети в Linux с помощью netplan

Начиная с Ubuntu 18.04 конфигурирование сети выполняется с помощью утилиты netplan. В других системах на базе deb, например, Debian, она может быть установлена командой:

apt-get install netplan

В данной статье рассмотрим принцип и примеры настройки сети с помощью netplan.

Конфигурационный файл

Файл для настройки сети находится в каталоге /etc/netplan/. Имя файла может быть любым, на конце должно быть расширение yaml, например:

* чаще всего, это файл 50-cloud-init.yaml или 01-netcfg.yaml.

YAML представляет из себя текстовый формат файла. Вложенные параметры должны иметь отступы табуляциями или пробелами, количество которых имеет важное значение (если поставить лишний пробел у одного из нескольких параметров, мы получим сообщение об ошибке «expected mapping»).

Простая настройка сети

Разберем пример настройки 3-х сетевых интерфейсов. Два из них будут с IP-адресами назначенными вручную (static IP), один — по DHCP.

Приводим файл к следующему виду:

network:
version: 2
renderer: networkd
ethernets:
ens3:
dhcp4: true
ens7:
dhcp4: no
addresses: [192.168.122.195/24]
gateway4: 192.168.122.1
mtu: 1500
nameservers:
addresses: [8.8.8.8, 77.88.8.8]
search: [ dmosk.local ]
ens9:
dhcp4: no
addresses: [192.168.1.10/24, 192.168.1.20/24]
nameservers:
addresses:
— 8.8.8.8
— 77.88.8.8
search: [ dmosk.local, dmosk.ru ]

  • version — версия YAML. На момент обновления статьи, была 2.
  • renderer — менеджер сети (networkd или NetworkManager).
  • ethernets — настройка сетевых адаптеров ethernet.
  • ens3, ens7, ens9 — настройки для соответствующих сетевых адаптеров. В данном примере мы настраиваем 3 сетевых адаптера.
  • dhcp4 — будет ли получать сетевой адаптер IP-адрес автоматически. Возможны варианты yes/true — получать адрес автоматически; no/false — адрес должен быть назначен вручную.
  • addresses — задает IP-адреса через запятую.
  • gateway4 — шлюз по умолчанию. В данном примере указывается только для интерфейса ens7.
  • mtu — при желании, можно задать значение MTU.
  • nameservers — настройка серверов имен (DNS).
  • nameservers addresses — указываем серверы DNS. Обратите внимание на разный формат записи для ens7 и ens9. Приемлемы оба варианта.
  • nameservers search — дописывает окончание домена, если мы обращаемся к узлу сети только по его имени. Стоит обратить внимание, что мы можем указать несколько доменов через запятую.

Применение настроек

Для применения настроек необходимо запустить команду netplan. Ее синтаксис:

Для проверки нашего конфигурационного файла вводим:

netplan —debug generate

Для применения настроек вводим:

* данную команду мы вводим также для перечитывания настроек и перезапуска сети (вместо привычных restart и reload).

Статический маршрут

Статический маршрут задается для конкретного интерфейса, также в конфигурационном файле netplan, например:

network:
version: 2
renderer: networkd
ethernets:
ens9:
dhcp4: no
addresses: 192.168.1.10/24
nameservers:
addresses:
— 8.8.8.8
— 77.88.8.8
routes:
— to: 192.168.0.0/24
via: 192.168.1.1
on-link: true

* в данном примере мы настроили маршрут для сетевого интерфейса ens9. Данная настройка задается параметром routes:

  • to — направление маршрута (в какую сеть мы должны попадать). В данном примере, 192.168.0.0/24.
  • via — через какой шлюз мы попадаем в сеть to.
  • on-link — активация маршрута при поднятии линка на сетевом интерфейсе.

Объединение интерфейсов (bonds)

С помощью bonds мы можем объединить интерфейсы с целью обеспечения отказоустойчивости и/или повышения пропускной способности.

network:
version: 2
renderer: networkd
ethernets:
ens2f0: <>
ens2f1: <>
bonds:
bond0:
dhcp4: no
interfaces:
— ens2f0
— ens2f1
parameters:
mode: active-backup
addresses:
— 192.168.122.195/24
gateway4: 192.168.122.1
mtu: 1500
nameservers:
addresses:
— 8.8.8.8
— 77.88.8.8

Читайте также:  Флешка uefi для установки mac os

* в данном примере мы объединяем физические интерфейсы ens2f0 и ens2f1; настройка parameters mode указываем на тип объединения — доступны варианты:

  • balance-rr (задействуются оба интерфейса по очереди, распределение пакетов по принципу Round Robin).
  • active-backup (используется только один интерфейс, второй активируется в случае неработоспособности первого).
  • balance-xor (задействуются оба интерфейса по очереди, распределение пакетов на основе политики хеширования xmit_hash_policy).
  • broadcast (задействуются оба интерфейса одновременно, пакеты передаются все интерфейсы).
  • 802.3ad (задействуются оба интерфейса по очереди, распределение пакетов на основе политики хеширования xmit_hash_policy)
  • balance-tlb (задействуются оба интерфейса по очереди, пакеты распределяются в соответствии с текущей нагрузкой)

Сетевой мост (bridge)

Сетевой мост позволяет пропускать сетевой трафик через другой сетевой адаптер. Это можно применить, например, для организации хоста виртуальных машин (для трансфера трафика к виртуальным машинам KVM через единственный сетевой интерфейс сервера).

network:
version: 2
renderer: networkd
ethernets:
ens2f0: <>
bridges:
br0:
macaddress: ce:ce:ce:45:45:45
interfaces:
— ens2f0
addresses:
— 192.168.1.15/24
gateway4:
nameservers:
addresses:
— 77.88.8.8
— 8.8.8.8
mtu: 1500
parameters:
stp: true
forward-delay: 4
dhcp4: false
dhcp6: false

  • bridges — настройки для интерфейсов bridge.
  • bridges br0 — настройка интерфейса br0.
  • macaddress — физический адрес (MAC) интерфейса. Настройка важна для некоторых провайдеров VPS — без нее бридж может не заработать.
  • interfaces — перечисление интерфейсов, из которых собираем мост. В данном примере ens2f0.
  • addresses, gateway4, nameservers — сетевые настройки (IP-адрес, шлюз, сервер имен).
  • mtu — одноименный параметр. Для сетей ethernet обычно равен 1500.
  • parameters stp — включает или отключает устранение петель в сети. В данном примере включено.
  • parameters forward-delay — время в секундах в течение которого мост будет оставаться в состояниях «Listening» и «Learning».
  • dhcp4, dhcp6 — включает или отключает автоматическое получение IP-адреса. В нашем случае, отключает.

Подробнее про настройку сетвого моста для KVM в инструкции Настройка KVM на Ubuntu Server.

Также мы можем настроить тегированный интерфейс vlan:

network:
version: 2
renderer: networkd
ethernets:
ens3: <>
vlans:
vlan5:
id: 5
link: ens3
dhcp4: no
addresses: [10.0.0.15/24]
gateway: 10.0.0.1

* в данном примере мы настроили интерфейс с тегом 5 на физическом адаптере ens3.

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

network:
version: 2
renderer: networkd
wifis:
wlp2s0b1:
dhcp4: no
dhcp6: no
addresses: [192.168.2.10/24]
gateway4: 192.168.2.1
nameservers:
addresses: [192.168.2.1, 77.88.8.8]
access-points:
:
password: wifi_password

  • wifis — определяет настойки для WiFi.
  • wlp2s0b1 — настройка для беспроводного сетевого адаптера.
  • dhcp4, dhcp6 — включает или отключает автоматическое получение IP-адреса.
  • addresses, gateway4, nameservers — настройка сети (IP-адрес, шлюз, сервер DNS).
  • access-points — настройка для подключения к беспроводной сети.
  • — имя беспроводной сети, к которой будем подключаться.
  • password — пароль для подключения к беспроводной сети.

Отключение netplan и возврат к interfaces

При желании, мы можем вернуть привычный принцип настройки сети. Для этого выполним несколько шагов.

1. Открываем настройку grub:

2. Находим опцию GRUB_CMDLINE_LINUX и дописываем в нее параметр:

* если GRUB_CMDLINE_LINUX содержит другие настройки, то наш параметр добавляем через пробел.

3. Устанавливаем пакет ifupdown:

apt-get install ifupdown

4. Настраиваем сеть в файле:

auto lo
iface lo inet loopback

auto ens5
iface ens5 inet dhcp

* в данном примере мы настраиваем сетевой интерфейс ens5 на автоматическое получение IP-адреса.

5. Применяем настройки загрузчика:

И перезагружаем систему:

Возможные ошибки

1. Error in network definition *.yaml line xxx column yyy: expected mapping

Ошибка появляется при проверке (generate) или применении (apply) настроек сети.

Причина: ошибка синтаксиса YAML.

Решение: внимательно смотрим на количество отступов, которое сделано для строки xxx. Количество пробелов должно точно соответствовать количеству в других строках. Если параметр вложенный, он также должен отделяться от родителя нужным количеством пробелов. Пример неправильной настройки:

network:
version: 2
renderer: networkd

* обратите внимание, что version имеет 4 пробела для отступа, а renderer — 2. Так как version и renderer равнозначные параметры для родителя network, они должны иметь одинаковое количество пробелов.

Источник

Оцените статью