Введение
Когда Вы настраиваете локальную сеть (Local Area Network — LAN), клиенты должные обладать некоторой информацией о сети, такой как IP адрес, IP адрес по крайней мере одного сервера доменных имён (DNS) и IP адрес сервера (шлюза, роутера(маршрутизатора)) сети обеспечивающего выход в интернет. При ручной настройке Вам надо вводить эту информацию на каждом компьютере в сети. При использовании Dynamic Host Configuration Protocol (DHCP, Протокол динамической настройки узла) компьютер может может получить всю необходимую информацию автоматически. Это особенно удобно для подключения ноутбуков и других мобильных устройств (смартфонов, планшетов и т.п.) к сети.
Например, в простейшей конфигурации сети Вы можете настроить один компьютер, который будет подключён к интернету, как DHCP сервер, а все остальные компьютеры в сети будут DHCP клиентами DHCP_Client.
Определение DNS-сервера
Другим параметром конфигурации, который может быть задан DHCP-сервером своему клиенту, является определение DNS-сервера. Если вы хотите, чтобы ваши клиенты использовали DNS-сервер с IP-адресом 8.8.8.8 и 10.1.1.1, вы можете сделать это, включив опцию domain-name-servers в конфигурационный файл DHCP.
default-lease-time 600; max-lease-time 7200; subnet 10.1.1.0 netmask 255.255.255.0 { range 10.1.1.3 10.1.1.254; option domain-name-servers 10.1.1.1, 8.8.8.8; } subnet 192.168.0.0 netmask 255.255.0.0 { } subnet 10.1.1.0 netmask 255.255.255.0 { range 10.1.1.3 10.1.1.254; option routers 10.1.1.1; }
Способы выдачи IP-адресов
Чтобы компьютер мог работать в сети, ему нужен IP-адрес. Он выглядит как 4 числа через точку. Например, IP-адрес timeweb.com – 185.114.246.105. Это как страна, город, улица и дом в почтовом адресе, только в интернете – это узлы связи и магистральные роутеры. Если устройству не выдали IP-адрес, оно не может общаться с другими устройствами в сети.
«IP» расшифровывается как Internet Protocol. Данный протокол имеет две версии: IPv4 и IPv6.
- IPv4 записывается, как в примере выше: 185.114.246.105
- IPv6 в 4 раза длиннее и выглядит примерно так – 2001:0DA8:AB10:0001:0010:0000:0001:00FB
Устройство может получить IP-адрес двумя способами: статическим (ручным) и динамическим.
- Статический – когда человек, например администратор сети, заходит в настройки компьютера и вручную прописывает для него IP-адрес. Это удобно, когда в сети мало компьютеров (дома или в небольшом офисе).
- Динамический – когда компьютер автоматически получает IP-адрес после подключения к сети. Такой IP-адрес называется динамическим и присваивается компьютеру на ограниченный промежуток времени. Этот способ помогает снизить трудозатраты, когда в сети много компьютеров или устройств.
Динамический способ подойдет как для предприятий, где количество устройств фиксировано, так и для кафе, через Wi-Fi которых каждый день проходит много разных гаджетов.
Протокол DHCP и динамический IP
Для динамической выдачи IP-адресов используется сетевой протокол DHCP («Dynamic Host Configuration Protocol»), что переводится как протокол динамической настройки узла.
Сетевой протокол – это набор правил и последовательных действий. Исходя из них, устройства, которые находятся в сети, соединяются и обмениваются данными между собой.
DHCP работает по модели «клиент-сервер». Он автоматически раздает IP-адреса и другие параметры конфигурации устройствам, чтобы те могли работать в сети.
- Клиент – это устройство, которому надо получить IP-адрес для работы в сети. Это может быть телефон, планшет, ноутбук или компьютер.
- Сервер – это устройство, которое раздает IP-адреса клиентам и следит за тем, чтобы два клиента не получили одинаковый IP-адрес.
Работа с утилитой ifconfig
В завершении сетевых настроек хотел немного поговорить об ifconfig. Ранее я упомянул, что более современным средством для настройки сети является утилита ip. В последних релизеах Debian и CentOS ifconfig вообще исключили из базовой установки, ее приходится устанавливать отдельно. IP объединяет в себе два функционала — настройка сетевых интерфейсов и маршрутизации. То есть по сути она заменяет ifconfig + route. В ней реализован функционал обоих программ.
Сам я привык к ifconfig, так как она есть не только в linux, но и в freebsd. Удобно использовать одно и то же средство во всех дистрибутивах. Но последнее время переучиваюсь на ip, так как надо идти в ногу со временем. Тенденция такова, что ip будут продвигать все сильнее и сильнее в силу его большей новизны и, наверное, удобства. Что касается удобства, лично я ничего не могу сказать, мне совершенно все равно, какую команду использовать:
или
Делают они одно и то же. Остальные команды по конфигурированию сетевых интерфейсов тоже не сильно отличаются, просто пишутся немного по-разному. Вот пример работы с маршрутами:
или
В случае с ip мы работаем с одной командой, а не двумя. Чем пользоваться вам, выбирайте сами. Если не привыкли к чему-то конкретному, рекомендую использовать ip. Мне было бы любопытно узнать, кто, что использует. Оставьте свой комментарий на эту тему.
На этом я завершаю свой материал по теме настройки сети в debian. Я рассмотрел все наиболее значимые и необходимые параметры, с которыми приходится сталкиваться во время конфигурирования сервера.
multiple interfaces example
Interface
nano -w /etc/network/interfaces
auto lo iface lo inet loopback mapping hotplug script grep map eth1 iface eth1 inet dhcp auto eth0 iface eth0 inet static address 10.152.187.1 netmask 255.255.255.0 auto wlan0 iface wlan0 inet static address 192.168.1.1 netmask 255.255.255.0 up /sbin/iwconfig wlan0 mode TTTTTT && /sbin/iwconfig wlan0 enc restricted && /sbin/iwconfig wlan0 key XXXXXXXX && /sbin/iwconfig wlan0 essid SSSSSSSS auto eth1
nano -w /etc/default/isc-dhcp-server
INTERFACES="wlan0 eth0"
Configure Subnet
nano -w /etc/dhcp3/dhcpd.conf
ddns-update-style none; log-facility local7; subnet 192.168.1.0 netmask 255.255.255.0 { option routers 192.168.1.1; option subnet-mask 255.255.255.0; option broadcast-address 192.168.1.255; option domain-name-servers 194.168.4.100; option ntp-servers 192.168.1.1; option netbios-name-servers 192.168.1.1; option netbios-node-type 2; default-lease-time 86400; max-lease-time 86400; host bla1 { hardware ethernet DD:GH:DF:E5:F7:D7; fixed-address 192.168.1.2; } host bla2 { hardware ethernet 00:JJ:YU:38:AC:45; fixed-address 192.168.1.20; } } subnet 10.152.187.0 netmask 255.255.255.0 { option routers 10.152.187.1; option subnet-mask 255.255.255.0; option broadcast-address 10.152.187.255; option domain-name-servers 194.168.4.100; option ntp-servers 10.152.187.1; option netbios-name-servers 10.152.187.1; option netbios-node-type 2; default-lease-time 86400; max-lease-time 86400; host bla3 { hardware ethernet 00:KK:HD:66:55:9B; fixed-address 10.152.187.2; } }
Check Route
ip route
192.168.1.0/24 dev wlan0 scope link 82.16.TT.0/24 dev eth1 scope link 10.152.187.0/24 dev eth0 scope link default via 82.16.TT.UU dev eth1
Permission issues with ISC-DHCP server
Sometimes upon rising DHCP server informs about permission errors like
Can't open /etc/dhcp/dhcp.conf: permission denied
or
Can't open /var/lib/dhcp/dhcpd.leases: permission denied.
If after checking the permissions are found to be correct, check apparmor profile for dhcpd:
shell# sudo apparmor_status apparmor module is loaded. 15 profiles are loaded. 15 profiles are in enforce mode. /sbin/dhclient /usr/bin/evince /usr/bin/evince-previewer /usr/bin/evince-thumbnailer /usr/lib/NetworkManager/nm-dhcp-client.action /usr/lib/connman/scripts/dhclient-script /usr/lib/cups/backend/cups-pdf /usr/lib/telepathy/mission-control-5 /usr/lib/telepathy/telepathy-* /usr/sbin/cupsd /usr/sbin/dhcpd /usr/sbin/mysqld-akonadi /usr/sbin/mysqld-akonadi///usr/sbin/mysqld /usr/sbin/tcpdump /usr/share/gdm/guest-session/Xsession 0 profiles are in complain mode. 4 processes have profiles defined. 4 processes are in enforce mode. /sbin/dhclient (1092) /sbin/dhclient (1093) /usr/sbin/cupsd (978) /usr/sbin/mysqld-akonadi///usr/sbin/mysqld (2136) 0 processes are in complain mode. 0 processes are unconfined but have a profile defined.
If /usr/sbin/dhcpd is in the list of profiles do the following:
1.Stop apparmor deamon
sudo /etc/init.d/apparmor stop
2.Edit /etc/apparmor.d/usr.sbin.dhcpd with root permissions and ensure that file has following lines:
/var/lib/dhcp/dhcpd.leases* rwl, /var/lib/dhcp/dhcpd6.leases* rwl, /etc/dhcp/dhcpd.conf r, /etc/dhcp/dhcpd6.conf r,
/var/lib/dhcp/dhcpd6.leases and /etc/dhcp/dhcpd6.conf are needed to run DHCP server in IPV6 mode, for example:
dhcpd -6 -cf /etc/dhcp/dhcpd6.conf -lf /var/lib/dhcp/dhcpd6.leases eth0
3.Start apparmor deamon
sudo /etc/init.d/apparmor start
After this operation apparmor deamon will allow dhcp server to open /etc/dhcp/dhcpd.conf or /var/lib/dhcp/dhcpd.leases files. For more information see man apparmor
Шаг 2: Настройка DHCP-сервера
- параметры – указывают, как выполнять задание (например, на какое время выделять адрес), выполнять ли его вообще (например, выделять ли адреса неизвестным клиентам) или какие параметры сетевой конфигурации отправлять DHCP-клиенту.
- декларации – определяют топологию сети, описывают клиентов и предоставляемые им адреса, или применяют группу параметров к группе деклараций.
4. Для определения настроек DHCP-сервера откроем и отредактируем файл конфигурации:
$ sudo vi /etc/dhcp/dhcpd.conf
Установите в начале файла следующие глобальные параметры, они будут действовать для всех указанных ниже деклараций (измените их в соответствии с вашими задачами). Это имя домена domain-name, имена DNS-серверов domain-name-servers, время аренды по умолчанию в секундах default-lease-time (если клиент не запросил его сам), максимальное время аренды в секундах max-lease-time и параметр authoritative, означающий «авторитетность» сервера в сегменте сети. Данный параметр нужен на тот случай, если клиент запросит неправильный IP-адрес — в этом случае сервер ответит ему отказом и предложит получить новый адрес.
option domain-name "itproffi.lan"; option domain-name-servers ns1.itproffi.lan, ns2.itproffi.lan; default-lease-time 3600; max-lease-time 7200; authoritative;
Обратите внимание, что перед некоторыми параметрами указано слово option, а перед некоторыми — нет. Это слово задает параметры, которые передаются клиенту в сетевой конфигурации
5. Теперь нужно указать подсеть, в нашем примере мы будем использовать DHCP в локальной сети 192.168.10.0/24.
subnet 192.168.10.0 netmask 255.255.255.0 { option routers 192.168.10.1; option subnet-mask 255.255.255.0; option domain-search "itproffi.lan"; option domain-name-servers 192.168.10.1; range 192.168.10.10 192.168.10.100; range 192.168.10.110 192.168.10.200; }
Здесь мы использовали следующие параметры:
routers — IP-адрес маршрутизатора по умолчаниюsubnet-mask — маска подсетиdomain-search — имя доменаdomain-name-servers — имена DNS-серверовrange — диапазон IP-адресов, выделяемый клиентам (можно указывать несколько диапазонов, но обязательно указать хотя бы один)
Самые распространенные параметры в файле /etc/netplan/*.yaml
Для начала разберемся какие самые распространенные параметры в этом файле могут быть.
network:
renderer: networkd — Выбор сетевого рендера. Выбран networkd
ethernets: — Блок с настройками сетевых интерфейсов.
ens160: — Имя первого сетевого интерфейса.
addresses: [192.168.3.13/24] — Статический IP-адрес сетевого интерфейса/Маска сети. На данный момент указан IPv4, можно также через запятую указать IPv6(пишется в кавычках) — [192.168.3.13/24,“2001:1::1/64”]
gateway4: 192.168.3.1 — Указание основного шлюза для IPv4.
gateway6: «2001:4::1»- Указание основного шлюза для IPv6.(пишется в кавычках)
dhcp4: yes/no — или true/false — включить/выключить получение сетевых настроек по DHCP для IPv4.
dhcp6: yes/no — или true/false — включить/выключить получение сетевых настроек по DHCP для IPv6.
macaddress: 52.54.00.6d.3c.59 — указание MAC-адреса.
nameservers: — Блок с настройками DNS.
addresses: — IP-адреса DNS-серверов, можно несколько через запятую.
ens192: — Имя второго сетевого интерфейса.
addresses: [10.1.0.5/24]
version: 2
Настройка кэширующего прокси-сервера Squid3
На заре своего развития основным назначением прокси-сервера Squid было кэширование трафика, сегодня, когда безлимитный интернет стал нормой жизни, эти возможности отходят на второй план, но остаются достаточно актуальными.
Squid поддерживает кэширование двух типов, в оперативной памяти и на диске. Сегодня можно встретить рекомендации отказаться от дискового кэша, мол проще скачать объект заново, чем искать его на диске. Однако мы считаем, что разумный размер дискового кэша при большом количестве клиентов позволяет эффективно использовать канал за счет хранения в кэше статических элементов: картинок, скриптов, CSS-файлов для часто посещаемых ресурсов.
Сразу предостережем от распространенной ошибки — использования для хранения кэша старых медленных дисков и выделения под кэш значительного пространства. В этом случае эффект будет прямо противоположен ожиданиям, время поиска объекта на диске при большой нагрузке будет занимать значительно больше времени, чем его повторное скачивание.
Но все преимущества Squid раскрываются тогда, когда появляется необходимость тонкой фильтрации трафика, здесь богатые возможности позволяют реализовывать самые разнообразные схемы, которые просто невозможно рассмотреть в рамках одного материала.
Для установки squid выполните команду:
get
Перейдем к настройкам. Для новичка конфигурационный файл squid может показаться излишне сложным, на самом деле большую часть его занимают подробные комментарии и примеры. Поэтому мы пойдем по файлу от начала к концу, указывая какие строки надо добавить или изменить. Откроем файл конфигурации /etc/squid3/squid.conf и перейдем к указанию группы доступа (acl) для локальной сети. Раскомментируем и исправим или добавим ниже строку:
acl192.168.31.024
Затем, спускаясь далее по конфигурационному файлу найдем секцию отвечающую за правила доступа и убедимся, что она содержит следующие правила:
http_access
http_access
http_accessall
Данная секция разрешает доступ для клиентов локальной сети, собственно сервера и запрещает всем остальным.
Теперь укажем порт, интерфейс и режим работы прокси-сервера.
http_port.168.31.1:3128intercept
Параметр intercept указывает, что прокси работает в прозрачном режиме, т.е. не требует прямого указания прокси на клиентах.
Перейдем к указанию параметров кэша. Зададим доступный объем памяти и укажем максимальный объем кэшированного объекта в памяти:
1024
in512
При задании этих параметров исходите из доступной памяти сервера, но учтите, что кэш в памяти начинает эффективно работать только после «прогрева» и будет сброшен при перезагрузке или выключении сервера.
После чего укажем размер дискового кэша и его расположение:
var204816256
Следующий параметр задает максимальный размер объекта в дисковом кэше:
Далее по файлу укажем место хранения логов и количество ротаций:
logloglog
31
В нашем случае логи хранятся 31 день, указывая это значение исходите из размеров лога и свободного места на диске, в любом случае этот параметр можно всегда изменить.
Остальные параметры оставляем без изменений, сохраняем файл и перезапускаем squid:
Затем в /etc/nat добавляем правило заворачивающее http-трафик на squid:
iptables192.168.31.024808080192.168.31.1:3128
Сохраняем изменения, перезагружаем сервер.
Обращаем ваше внимание, что squid3 в прозрачном режиме, в отличие от предыдущей версии, не принимает соединения, если в настройках прямо указано использование прокси
В этом случае вы получите сообщение, что доступ запрещен:
Как видим, настройка роутера на современной платформе, несмотря на отличия, остается весьма простой и доступна для повторения широкому кругу читателей. В наших будущих материалах мы также будем принимать за основу роутер, настроенный именно по данному материалу, в тоже время с данным роутером будут работать все решения, опубликованные нами ранее, хотя для некоторых из них могут понадобиться незначительные корректировки.
Ручная настройка сети в Ubuntu
Предыдущий вариант хорош, если вы собираетесь его использовать постоянно, но если нужно только один раз настроить сеть через терминал, то редактировать конфигурационные файлы необязательно. Мы можем всё сделать с помощью команды ip. Дальше будет рассмотрена настройка сети вручную Ubuntu.
Эта команда используется для управления сетью и входит во все дистрибутивы по умолчанию.
Как и в предыдущем примере, смотрим сетевые интерфейсы:
После того, как мы узнали интерфейс, можно переходить к настройке.
Получение IP-адреса по DHCP
Сначала включаем интерфейс:
Затем с помощью команды dhclient запрашиваем ip:
Всё, настройка сети Ubuntu 16.04 завершена, у нас есть IP-адрес, и осталось только настроить DNS, но это мы рассмотрим ниже.
Настройка статического IP
Включаем интерфейс:
Устанавливаем IP-адрес, маску сети и broadcast-адрес для нашего интерфейса:
Указываем IP-адрес шлюза:
Здесь 192.168.1.7 — наш IP-адрес, 255.255.255.0 — маска сети, 192.168.1.255 — широковещательный адрес. Замените эти значения на свои.
Как видите, сеть работает. Если хотите поэкспериментировать на машине с рабочей сетью, её можно сбросить командой:
Настройка статического IP-адреса на рабочем столе Ubuntu
Настройка статического IP-адреса на настольных компьютерах Ubuntu не требует технических знаний.
На экране «Действия» найдите «настройки» и щелкните значок. Откроется окно настроек GNOME. В зависимости от интерфейса, который вы хотите изменить, щелкните вкладку «Сеть» или «Wi-Fi». Чтобы открыть настройки интерфейса, щелкните значок шестеренки рядом с названием интерфейса.
На вкладке «Метод IPV4» выберите «Вручную» и введите свой статический IP-адрес, сетевую маску и шлюз. После этого нажмите кнопку «Применить».
Чтобы проверить изменения, откройте свой терминал либо с помощью либо щелкнув значок терминала и запустите:
На выходе будет показан IP-адрес интерфейса:
Шаг 2: Настройка DHCP-сервера
3. Основной файл конфигурации DHCP — /etc/dhcp/dhcpd.conf, в него нужно внести всю информацию, отправляемую клиентам.
В файле конфигурации DHCP есть два типа данных:
- параметры – указывают, как выполнять задание (например, на какое время выделять адрес), выполнять ли его вообще (например, выделять ли адреса неизвестным клиентам) или какие параметры сетевой конфигурации отправлять DHCP-клиенту.
- декларации – определяют топологию сети, описывают клиентов и предоставляемые им адреса, или применяют группу параметров к группе деклараций.
4. Для определения настроек DHCP-сервера откроем и отредактируем файл конфигурации:
$ sudo vi /etc/dhcp/dhcpd.conf
Установите в начале файла следующие глобальные параметры, они будут действовать для всех указанных ниже деклараций (измените их в соответствии с вашими задачами). Это имя домена domain-name, имена DNS-серверов domain-name-servers, время аренды по умолчанию в секундах default-lease-time (если клиент не запросил его сам), максимальное время аренды в секундах max-lease-time и параметр authoritative, означающий «авторитетность» сервера в сегменте сети. Данный параметр нужен на тот случай, если клиент запросит неправильный IP-адрес — в этом случае сервер ответит ему отказом и предложит получить новый адрес.
option domain-name "itproffi.lan"; option domain-name-servers ns1.itproffi.lan, ns2.itproffi.lan; default-lease-time 3600; max-lease-time 7200; authoritative;
Обратите внимание, что перед некоторыми параметрами указано слово option, а перед некоторыми — нет. Это слово задает параметры, которые передаются клиенту в сетевой конфигурации. 5
Теперь нужно указать подсеть, в нашем примере мы будем использовать DHCP в локальной сети 192.168.10.0/24
5. Теперь нужно указать подсеть, в нашем примере мы будем использовать DHCP в локальной сети 192.168.10.0/24.
subnet 192.168.10.0 netmask 255.255.255.0 { option routers 192.168.10.1; option subnet-mask 255.255.255.0; option domain-search "itproffi.lan"; option domain-name-servers 192.168.10.1; range 192.168.10.10 192.168.10.100; range 192.168.10.110 192.168.10.200; }
Здесь мы использовали следующие параметры:
routers — IP-адрес маршрутизатора по умолчаниюsubnet-mask — маска подсетиdomain-search — имя доменаdomain-name-servers — имена DNS-серверовrange — диапазон IP-адресов, выделяемый клиентам (можно указывать несколько диапазонов, но обязательно указать хотя бы один)
Конфигурация DHCP-relay (передача полномочий другому DHCP-серверу)
Если ваш DHCP-сервер не имеет доступа к какой-то конкретной подсети, это не значит, что он не может предоставлять там свои услуги. Для выполнения этой работы агент DHCP-relay должен быть настроен в удаленной подсети, которая пересылает все запросы на указанный DHCP-сервер и удаленную подсеть. Сначала установите DHCP-relay:
Затем создайте конфигурационный файл /etc/default/isc-dhcp-relay с такими двумя строками:
Приведенный выше конфигурационный файл даст указание агенту DHCP-relay agent прослушивать на интерфейсе eth0 запросы DHCP-клиента и пересылать их на DHCP-сервер по IP-адресу 192.168.5.5.
Проверка параметров сети
Для проверки внесенных вами исправлений давайте наберем команду
Как видим на запрос ответил systemd-resolver 127.0.0.53
Также можем еще посмотреть вывод команды:
Как видим из данного вывода DNS указан для нашего сетевого интерфейса enp0s3 его же IP адрес.
Но глобальная переменная DNS является все также systemd-resolver.
Для изменения глобальной переменной необходимо проделать следующие действия:
- откройте и отредактируйте следующий файл:
Примените изменения:
Посмотрим еще раз на глобальные переменные DNS
Из вывода видно что наш DNS изменился на 10.5.5.1.
Но вывод nslookup также покажет systemd-resolver.
- Устанавливаем resolvconf
Открываем файл и вносим изменения:
Применим наши изменения
Теперь вывод nslookup покажет наш DNS сервер
На этом Настройка сети в Ubuntu Server 20.04 LTS закончена.
Также можете вступить в Телеграм канал, ВК или подписаться на Twitter. Ссылки в шапки страницы. Заранее всем спасибо!!!
Обзор технологий
В следующих разделах приведены краткие обзоры DHCP и TCP/IP.
Обзор DHCP
DHCP — это стандарт IP для упрощения управления IP-конфигурацией узлов. Стандарт DHCP предусматривает использование DHCP-серверов для управления динамическим выделением IP-адресов и других сопутствующих сведений о настройке для клиентов сети, поддерживающих DHCP.
DHCP позволяет использовать DHCP-сервер для динамического назначения IP-адреса компьютеру или другому устройству, такому как принтер, в локальной сети, а не вручную настраивать каждое устройство со статическим IP-адресом.
Любой компьютер в сети TCP/IP должен иметь уникальный IP-адрес, который вместе с маской подсети однозначно определяет главный компьютер и подсеть, в которой этот компьютер находится. Используя DHCP, можно проверить, все ли компьютеры, настроенные в качестве DHCP-клиентов, получают IP-адреса, предназначенные для данной подсети и расположения в сети; такие параметры DHCP, как шлюз по умолчанию и DNS-серверы, вместе с информацией о правильной работе в сети можно автоматически передавать DHCP-клиентам.
Для сетей на основе TCP/IP DHCP сокращает сложность и объем административной работы, связанной с настройкой компьютеров.
Обзор TCP/IP
по умолчанию во всех версиях операционных систем Windows Server и Windows параметры TCP/IP для сетевых подключений IP версии 4 настроены на автоматическое получение IP-адреса и других сведений, называемых параметрами dhcp, с dhcp-сервера. По этой причине не требуется настраивать параметры TCP/IP вручную, если только компьютер не является сервером или другим устройством, для которого требуется настроенный вручную статический IP-адрес.
Например, рекомендуется вручную настроить IP-адрес сервера DHCP и IP-адреса DNS-серверов и контроллеров домена, на которых выполняются службы домен Active Directory Services (AD DS).
TCP/IP в Windows Server 2016:
-
сетевое программное обеспечение, которое основано на сетевых протоколах, являющихся отраслевым стандартом;
-
маршрутизируемый протокол корпоративных сетей, обеспечивающий подключение компьютера под управлением Windows к локальным и глобальным сетям;
-
базовые технологии и служебные программы для соединения компьютеров под управлением ОС Windows с разнородными системами для обмена данными;
-
Основа для получения доступа к глобальным службам Интернета, таким как серверы Web и протокол FTP (FTP).
-
надежная, масштабируемая кроссплатформенная система клиент-сервер.
TCP/IP обеспечивает основные служебные программы TCP/IP, которые позволяют компьютерам под управлением Windows соединяться с другими системами, произведенными как корпорацией Майкрософт, так и другими компаниями. Ниже указаны некоторые из них.
-
Windows Server 2016
-
Windows 10
-
Windows Server 2012 R2
-
Windows 8.1
-
Windows Server 2012
-
Windows 8
-
Windows Server 2008 R2
-
Windows 7
-
Windows Server 2008
-
Windows Vista
-
Узлы в Интернете
-
Системы Apple Macintosh
-
Мэйнфреймы IBM
-
системы UNIX и Linux
-
Системы Open VMS
-
Принтеры, готовые к работе в сети
-
Планшеты и Сотовые телефоны с поддержкой технологии Wired Ethernet или Wireless 802,11
Требования к системе
Прежде чем Вы начнете, убедитесь, что:
- Различные сетевые утилиты, предназначенные для автоматического конфигурирования сети выключены. Например, тут Вы можете прочитать, как отключить установленный по умолчанию в Ubuntu сетевой помощник Network Manager.
- Различные сетевые фильтры (например iptables), и утилиты их конфигурирования (например, Firestarter) отключены/правильно настроены и не вмешиваются в работу сети.
- У Вас есть все необходимые параметры для подключения в Вашей сети (например, IP-адрес, маска подсети и шлюз по умолчанию для соединения с использованием статического IP).
- Устройства сети осуществляющие фильтрацию по MAC-адресу правильно настроены и «знают» Ваш сетевой интерфейс.
- Драйвер Вашего сетевого устройства корректно установлен, кабель (при проводном соединении) исправен и подсоединен.
Для настроек вам обязательно потребуется имя вашего сетевого адаптера. Его можно узнать из вывода команды:
$ sudo lshw -C network
Она позволяет посмотреть подключенные сетевые устройства.
Пример вывода команды:
ubuntu@ubuntu:~$ sudo lshw -C network *-network description: Ethernet interface # Тип устройства product: L2 100 Mbit Ethernet Adapter # Название адаптера vendor: Attansic Technology Corp. # Производитель устройства physical id: 0 bus info: pci@0000:03:00.0 logical name: eth0 # Имя сетевого интерфейса version: a0 serial: 00:00:00:00:00:00 # Физический адрес устройства (mac-адрес) size: 100MB/s capacity: 100MB/s width: 64 bits clock: 33MHz capabilities: pm msi pciexpress vpd bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd autonegotiation configuration: autonegotiation=on broadcast=yes driver=atl2 # Используемый драйвер driverversion=2.2.3 # Версия драйвера duplex=full firmware=L2 ip=192.168.0.5 latency=0 link=yes # Наличие линка module=atl2 multicast=yes port=twisted pair speed=100MB/s # Текущая скорость подключения.
Обратите внимание на строку:
logical name: eth0
eth0 — это и есть искомое имя сетевого интерфейса.
После внедрения SystemD (начиная с Ubuntu 15.04) сетевые интерфейсы могут иметь другие имена (не ethX).
Сделано это для того, что бы имена сетевых устройств не менялись при подключении к машине новых адаптеров (в последнее время, некоторые USB модемы выступают в роли сетевого адаптера). В результате eth0 может называться например enp0s4 или eno1, или даже enx78e7d1ea46da. Именно это имя сетевого адаптера и нужно использовать в настройке сети.
Такое переименование можно отключить добавив в /etc/default/grub, в строку с переменной GRUB_CMDLINE_LINUX_DEFAULT строку net.ifnames=0. После этого нужно выполнить sudo update-grub
Настроить DHCP-клиент через среду рабочего стола Ubuntu
Вы также можете использовать другую виртуальную машину с Ubuntu 20.04 Desktop в качестве DHCP-клиента. В Ubuntu метод конфигурации по умолчанию установлен как DHCP. Если он не берет IP-директор от DHCP-сервера, измените настройку IPV4 в вашей сети. Нажмите, перейдите в «Настройки» и перейдите в настройки проводной или беспроводной сети. В вашей системе должно появиться следующее окно:
Установите всю конфигурацию IPV4, как показано на скриншоте выше.
Теперь отобразите сведения о сети, щелкнув вкладку «Подробности» следующим образом:
Проверьте конфигурацию, выполнив следующую команду:
Вы увидите, что IP-адрес назначен сетевому интерфейсу.
Вы также можете использовать хост-компьютер в своей системе в качестве DHCP-клиента. Однако, чтобы получить IP-адрес, не перезагружайте хост-компьютер, потому что в этом случае Virtualbox будет отключен, поэтому в системе не будет запущен DHCP.
Важно отметить, что если вы используете мобильные устройства или хост-машины в качестве DHCP-клиента, скорее всего, они уже подключены к этой сети. Однако они будут запрашивать у DHCP-сервера тот же IP-адрес, который был выделен ранее
Однако, если IP-адрес не попадает в указанный вами диапазон, тогда маршрутизатору будет отправлен запрос.
Клиент DHCP (dhclient) Linux
Для работы Linux в качестве DHCP-клиента необходимо установить пакет dhclient (в RedHat, возможно — dhcpcd). Данный клиент запрашивает у сервера параметры и применяет их к локальному хосту. dhclient использует конфигурационный файл /etc/dhclient.conf (иногда /etc/dhcp/dhclient.conf или /etc/dhcp3/dhclient.conf). А так же, хранит информацию об арендованных параметрах в файле /var/lib/dhcp/dhclient.leases. В общем случае, клиент DHCP устанавливается вместе с дистрибутивом ОС и создает файл конфигурации по умолчанию, который вполне работоспособен и не требует вмешательств. Для работы dhclient, необходимо в конфигурационных файлах сетевых интерфейсов вашего дистрибутива (на которых необходимо получение сетевых параметров по DHCP), указать параметр BOOTPROTO=dhcp (для RedHat) и iface eth_№_ dhcp (для Deb).
Запускаем DHCP сервер с новыми настройками
Теперь нам нужно перезапустить сервер:
Shell
sudo systemctl restart isc-dhcp-server
1 | sudo systemctl restart isc-dhcp-server |
Посмотрите не оставили-ли вы ненужных записей в конфигурационном файле dhcpd.conf. Если, всё таки, вы оставили какие-то записи — просто закамментируйте их, в противном случае DHCP сервер не загрузится.
Чтобы проверить, работает наш DHCP сервер или нет, используйте команду:
Shell
sudo systemctl status isc-dhcp-server
1 | sudo systemctl status isc-dhcp-server |
Если сервер настроен верно, то статус сервера будет «active».
Чтобы запустить, или остановить DHCP сервер, используйте следующие команды:
Shell
sudo systemctl start isc-dhcp-server
1 | sudo systemctl start isc-dhcp-server |
Shell
sudo systemctl stop isc-dhcp-server
1 | sudo systemctl stop isc-dhcp-server |
Теперь у нас полностью рабочий DHCP сервер. Далее нам предстоит настройка клиента нашего сервера.
Балансировка и резервный DHCP-server
Ознакомившись с настройкой DHCP-сервера, можно настроить резервировный (он же балансирующий нагрузку на основной) сервер DHCP. Резервный DHCP-server настраивается как и основной. Отличие резервного от основного в том, что основным сервером выдаются 80% адресов, а резервным — 20%. То есть параметр range в конфиге задается таким образом, чтобы поделить сеть в соотношении 80/20.
Что еще почитать:
Резюме
Итого, прочитав статью мы поняли, что такое DHCP протокол, как установить и настроить DHCP клиента на Linux, а так же, как настроить сервер DHCP на Linux. В общем, данная тема проста и понятна до безобразия и если кому-то не понятно, буду ждать Ваших комментариев!
Заключение
В данном обзоре мы рассмотрели первоначальную настройку и оптимизацию Ubuntu 20.04. Так же рекомендуем ознакомиться со статьей «Как обеспечить безопасность Linux сервера» и другими статьями нашего блога, в котором рассмотрены вопросы администрирования операционных систем и различных приложений. Для наших клиентов облачного VPS хостинга, мы создали готовый шаблон, с помощью которого вы можете установить Ubuntu 20.04 в автоматическом режиме и уже несколько минут приступить к работе. Наша круглосуточная служба технической поддержки поможет с его базовой настройкой, если у вас возникнут сложности.