Курсовая работа: Настройка сетевых параметров в Debian

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Рис. 5

Вы узнаете все ip адреса сервера, в том числе и ipv6. То же самое, только без ipv6 можно увидеть другой командой:

Рис. 6

А если совсем заморочиться и обрезать все лишнее, то можно вывести только список ip адресов:

Рис. 7

Аналогичный вывод будет и в таком случае:

# ifconfig | awk '/inet addr:/ {print substr($2, 6)}'

Можно убрать локальный интерфейс, чтобы глаза не мозолил, тогда вообще все наглядно:

# ifconfig | awk '/inet addr:/ {print substr($2, 6)}' | grep -v 127.0.0.1

Этих вариантов достаточно, чтобы проверить все ip адреса, отрезав лишнее.

11. Команда ip

Команда ip может использоваться для следующих целей:

Узнать какие интерфейсы сконфигурированы в системе.

Запросить статус IP интерфейса.

Сконфигурировать локальный, Ethernet и другие интерфейсы.

Пометить интефейс как up или down.

Сконфигурировать или изменить статическую маршрутизацию или маршрутизацию по умолчанию.

Сконфигурировать туннель через IP.

Сконфигурировать содержимое ARP или NDISC кэша.

Назначить IP адресы, маршруты, подсети и другую IP информацию на интерфейс.

Присвойте статический IP-адрес файлу конфигурации редактирования интерфейса eth0 в файле /etc/network/interfaces для внесения постоянных изменений, как показано ниже:

auto eth0

iface eth0 inet static

address 192.168.50.2

netmask 255.255.255.0

gateway 192.168.50.1

Затем перезапустите сетевые службы после ввода всех данных, используя следующую команду:

# /etc/init.d/networking restart

Если вы не привилегирован пользователь:

$ sudo /etc/init.d/networking restart

1. Как назначить IP-адрес определенному интерфейсу?

Следующая команда используется для назначения IP-адреса конкретному интерфейсу (eth1):

# ip addr add 192.168.50.5 dev eth1

Если вы не привилегирован пользователь:

$ sudo ip addr add 192.168.50.5 dev eth1

2. Как проверить IP-адрес?

Чтобы получить информацию о ваших сетевых интерфейсах, такую как IP-адрес, информация о MAC-адресе, используйте следующую команду, как показано ниже:

# ip addr show

Если вы не привилегирован пользователь:

$ sudo ip addr show

Пример вывода:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 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

inet6 ::1/128 scope host

valid_lft forever preferred_lft forever

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000

link/ether 00:0c:29:28:fd:4c brd ff:ff:ff:ff:ff:ff

inet 192.168.50.2/24 brd 192.168.50.255 scope global eth0

inet6 fe80::20c:29ff:fe28:fd4c/64 scope link

valid_lft forever preferred_lft forever

3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000

link/ether 00:0c:29:28:fd:56 brd ff:ff:ff:ff:ff:ff

inet 192.168.50.5/24 scope global eth1

inet6 fe80::20c:29ff:fe28:fd56/64 scope link

valid_lft forever preferred_lft forever

3. Как удалить IP-адрес?

Следующая команда удалит назначенный IP-адрес из данного интерфейса (eth1):

# ip addr del 192.168.50.5/24 dev eth1

Если вы не привилегирован пользователь:

$ sudo ip addr del 192.168.50.5/24 dev eth1

В случаях поиска неисправностей, для отладки и т.д. сетевые интерфейсы можно настроить с помощью команды ip. Но надо помнить, что эти настройки будут действовать только до перезагрузки операционной системы! Получить информацию по сетевым интерфейсам:

# ip link show

Получить информацию по ip адресам:

# ip addr show

Удалить ip адрес:

# ip address del 192.168.123.35/24 dev enp0s3

Назначить ip адрес вместо удалённого:

# ip address add 192.168.123.254/24 brd + dev enp0s3

Получить информацию по маршрутам:

# ip route show

Добавить основной шлюз:

# ip route add default via 192.168.123.1

Добавить маршрут в сеть 192.168.111.0/24 через шлюз 192.168.123.2

# ip route add 192.168.111.0/24 via 192.168.123.2

12. Static routes (статические маршруты)

Следующим важным элементом настройки сети является управление статическими маршрутами (static routes): добавление (route add) и удаление (route del). Вновь воспользуемся консольной командой ip. Для того, чтобы добавить маршрут в debian, достаточно ввести в консоли:

# ip route add 10.0.0.0/24 via 192.168.1.50

Проверяем таблицу маршрутов:

Рис. 8

Чтобы удалить маршрут, выполняем команду:

# ip route delete 10.0.0.0/24

После перезагрузки все маршруты, добавленные таким способом, исчезнут. Чтобы статический маршрут в Debian сохранялся после перезагрузки, опять редактируем interfaces, добавляя в описание того интерфейса, к которому будут относиться маршруты, следующие строки:

post-up route add -net 10.0.0.0 netmask 255.255.255.0 gw 192.168.1.50

post-up route add -net 10.1.0.0 netmask 255.255.255.0 gw 192.168.1.60

pre-down route del -net 10.0.0.0 netmask 255.255.255.0 gw 192.168.1.50

pre-down route del -net 10.1.0.0 netmask 255.255.255.0 gw 192.168.1.60

Рис. 9

Мы добавили 2 статических маршрута. Перезагружаемся и проверяем.

Конфигурация целиком стала выглядеть вот так:

source /etc/network/interfaces.d/*

auto lo

iface lo inet loopback

auto eth0

iface eth0 inet dhcp

post-up route add -net 10.0.0.0 netmask 255.255.255.0 gw 192.168.1.50

post-up route add -net 10.1.0.0 netmask 255.255.255.0 gw 192.168.1.60

pre-down route del -net 10.0.0.0 netmask 255.255.255.0 gw 192.168.1.50

pre-down route del -net 10.1.0.0 netmask 255.255.255.0 gw 192.168.1.60

auto eth0:1

iface eth0:1 inet static

address 192.168.1.35

netmask 255.255.255.0

gateway 192.168.1.35

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

13. Как выполнить перезапуск сети

Перезапуска сети в Debian можно воспользоваться командой:

# service networking restart

Она выполняется не мгновенно, обычно несколько секунд. Выполнить перезагрузку сети можно так же командой:

# /etc/init.d/networking restart

[ok] Restarting networking (via systemctl): networking.service.

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

14. Настройка vlan в Debian

Для настройки vlan в Debian первым делом необходимо установить пакет vlan:

# apt-get -y install vlan

Теперь нужно разобраться с необходимым модулем ядра для vlan --8021q. Проверим, загружено ли оно в системе:

# lsmod | grep 8021q

Если в выводе пусто, а по-умолчанию там будет пусто, модуль не загружен. Загрузим его и проверим:

# modprobe 8021q

# lsmod | grep 8021q

8021q 27844 0

garp 13117 1 8021q

mrp 17343 1 8021q

Все в порядке, vlan модуль загрузился. Добавим его в автозагрузку:

# echo 8021q >> /etc/modules

Теперь этот модуль будет загружаться при старте сервера. Создадим виртуальный интерфейс с vlan с id 1500:

# vconfig add eth0 1500

Назначим адрес новому интерфейсу и запустим его:

# ip addr add 192.168.10.100/24 dev eth0.1500

# ip link set eth0.1500 up

Можно в одну команду, с помощью ifconfig:

ifconfig eth0.1500 192.168.10.100 netmask 255.255.255.0 up

Смотрим, что получилось:

Рис. 10

Мы выполнили настройку vlan интерфейса в Debian. Теперь сделаем так, чтобы после перезагрузки настройки сохранились. Для этого добавляем свойства vlan интерфейса в файл конфигурации сети, оставляя и не трогая то, что там уже есть:

# mcedit /etc/network/interfaces

auto eth0.1500

iface eth0.1500 inet static

address 192.168.10.100

netmask 255.255.255.0

vlan_raw_device eth0

Перезагрузите сервер и проверьте, что получилось. Можно выполнить перезапуск сети, но если вы до этого все вручную через консоль сделали, то не поймете, сработали настройки из файла или нет. Таким образом очень просто и быстро настроить vlan на сервере с Debian.

15. Работа с файлом hosts

В папке /etc любого linux дистрибутива, в том числе debian есть файл hosts. Разберемся немного что это за файл и для чего он нужен. По-умолчанию он выглядит следующим образом:

# cat /etc/hosts

Рис. 11

Представим, что у нас в локальной сети есть некий сервер с именем server и ip 192.168.1.50 Мы хотим к нему обращаться по имени. Тогда добавляем запись в файл hosts:

192.168.1.50 server

Теперь мы можем обращаться к серверу просто по имени server.

Рис. 12

Сервер будет в первую очередь смотреть информацию в файле hosts, только потом в dns сервере. Например, если вы добавите в файл строку:

127.0.0.1 ya.ru

То обращаясь к адресу ya.ru будете попадать на локалхост:

Рис. 13

Этот функционал может быть полезен для публикации в локальной сети каких-то внутренних сервисов, к которым доступ будет только из вашей сети. Вам нет необходимости использовать dns сервер, с файлом hosts настройка делается гораздо быстрее.

16. Настройка сетевой карты

Иногда возникают ситуации, когда необходимо настроить или изменить настройки сетевой карты. Сразу отмечено, что настраивать сетевую карту можно только на реальном железе. На виртуальном, скорее всего, ни одна из предложенных дальше команд не приведет к какому-нибудь результату. У виртуальных сетевых адаптеров просто нет настроек. Для начала посмотрим, какие сетевые карты есть на сервере:

# lspci | grep Eth

01:00.0 Ethernet controller: Qualcomm Atheros AR8121/AR8113/AR8114 Gigabit or Fast Ethernet (rev b0)

Это единственная сетевая карта фирмы Qualcomm. Теперь установим утилиту ethtool для настройки сетевой карты:

# apt-get install ethtool

Посмотрим информацию о сетевой карте:

# ethtool eth0

Рис. 14

Указана текущая скорость, на которой работает карточка. Ее можно сменить в случае необходимости:

# ethtool -s eth0 speed 100 duplex full

Этой командой можно изменить скорость сетевой карточки до 100Mb/s в случае, если там стояла другая скорость. Смотрим, что получилось:

Рис. 15

Показал просто для примера, вряд ли кому-то понадобится уменьшать скорость. Чаще нужно выполнить обратное преобразование.

У утилиты ethtool много параметров, с помощью которых можно настроить сетевую карту. Пример этих параметров можно посмотреть на сайте redhat.

17. Работа с утилитой ifconfig

В завершении сетевых настроек об ifconfig. Более современным средством для настройки сети является утилита ip. В релизе CentOS ifconfig вообще исключили из базовой установки, ее приходится устанавливать отдельно. IP объединяет в себе два функционала -- настройка сетевых интерфейсов и маршрутизации. То есть по сути она заменяет ifconfig + route. В ней реализован функционал обоих программ.

Удобно использовать одно и то же средство во всех дистрибутивах. Но последнее время переучиваюсь на ip, так как надо идти в ногу со временем. Тенденция такова, что ip будут продвигать все сильнее и сильнее в силу его большей новизны и, наверное, удобства.

ip addr add 192.168.1.35/24 dev eth0

или

ifconfig eth0 192.168.1.35 netmask 255.255.255.0

Делают они одно и то же. Остальные команды по конфигурированию сетевых интерфейсов тоже не сильно отличаются, просто пишутся немного по-разному. Вот пример работы с маршрутами:

ip route add 192.168.100.0/24 dev eth2

или

route add -net 192.168.100.0/24 dev eth2

В случае с ip мы работаем с одной командой, а не двумя. Чем пользоваться вам, выбирайте сами. Если не привыкли к чему-то конкретному, рекомендую использовать ip.

На этом конец материала по теме настройки сети в debian. Рассмотрены все наиболее значимые и необходимые параметры, с которыми приходится сталкиваться во время конфигурирования сервера.

Заключение

В завершении сетевых настроек хотелось немного поговорить об ifconfig. Более современным средством для настройки сети является утилита ip. В последних релизах Debian и CentOS ifconfig вообще исключили из базовой установки, ее приходится устанавливать отдельно. IP объединяет в себе два функционала -- настройка сетевых интерфейсов и маршрутизации. То есть, по сути она заменяет ifconfig + route. В ней реализован функционал обоих программ.

Тенденция такова, что ip будут продвигать все сильнее и сильнее в силу его большей новизны и, наверное, удобства.

ip add 192.168.1.35/24 dev eth0

или

ifconfig eth0 192.168.1.35 netmask 255.255.255.0

Делают они одно и то же. Остальные команды по конфигурированию сетевых интерфейсов тоже не сильно отличаются, просто пишутся немного по-разному. Вот пример работы с маршрутами:

ip route add 192.168.100.0/24 dev eth2

или

route add -net 192.168.100.0/24 dev eth2

В случае с ip мы работаем с одной командой, а не двумя. Чем пользоваться вам, выбирайте сами. Если не привыкли к чему-то конкретному, рекомендую использовать ip.

В этой статье мы рассмотрели, как выполняется настройка сети Debian. Конечно, это еще далеко не все, что возможно настроить, но с помощью этих команд можно в большинстве случаев заставить работать сеть. Настройка сети из консоли debian дело сложное, в графическом интерфейсе все делается намного проще, с помощью NetworkManager все настраивается автоматически.

На этом завершается материал по теме настройки сети в debian. Рассмотрены все наиболее значимые и необходимые параметры, с которыми приходится сталкиваться во время конфигурирования сервера.

Список использованной литературы

1. Red Hat Linux 6.2 (с диском-дистрибутивом русифицированным) / ред. А. Пасечник. - М.: СПб: Питер,2016. - 560 c.

2. Блам Sendmail for Linux. Система электронной почты на основе Linux / Блам, Ричард; Blum, Richard. - М.: Вильямс, 2017. - 448 c

3. Болл Red Hat Linux 8/9 Настольная книга пользователя / Болл, Билл и др.. - М.: СПб: ДиаСофт, 2017. - 928 c

4. Валади, Дж. 100% самоучитель Linux / Дж. Валади. - М.: Технолоджи-3000, 2019. - 336 c.

5. Колесниченко, Д.Н. Linux. Полное руководство / Д.Н. Колисниченко, Аллен, Питер В.. - М.: СПб: Наука и Техника, 2019. - 784 c.

Источник: https://otherreferats.allbest.ru/download/1280141/