Стоимость "обучения" |
Команды настройки протокола IP
Содержание:
- Протокол IP как средство организации межсетевого взаимодействия.
- Управление IP-адресами в Linux.
- Несколько IP-адресов на одном сетевом интерфейсе.
- Управление ARP -таблицей.
- Управление маршрутами.
Протокол IP как средство организации межсетевого взаимодействия
Сетевой уровень модели сетевого взаимодействия обеспечивает доставку пакетов для узлов составной сети [1] (совокупности подсетей, построенных на основе различных технологий уровня интерфейсов и использующих различные типы магистральных каналов для взаимодействия).
Основой сетевого уровня является интернет-протокол IP (Internet Protocol), имеющий следующие ключевые особенности:
- IP внедряет данные вышележащих уровней в соответствующие единицы передачи информации - сетевые пакеты;
- IP является протоколом без установления соединения, т. е. не требует физического или логического канала и не гарантирует доставку пакетов;
- IP представляет собой маршрутизируемый протокол. Организация протокола IP обеспечивает схему доставки пакетов на основе IP-адресации и группировки сетевых узлов в подсети.
Каждый IP-пакет помимо данных вышележащего уровня содержит заголовок, в котором указаны IP-адреса отправителя и получателя, а также описан ряд параметров: тип службы, идентификационную информацию, номер протокола вышележащего уровня, параметры, используемые при фрагментации, контрольную сумму и т.д. (более подробные сведения приведены в [ 7 ] [ 23 ] ). Длина IP-заголовка составляет 20 байт, максимальная длина пакета ( MTU ) — 64Кбайт (реальная длина пакета ограничена возможностями передающей среды).
IP-адрес ( сетевой адрес ) протокола IP версии 4 (IPv4) представляет собой 4-х байтовый номер, который принято записывать в десятичной форме, разделяя байты точкой (например: 192.168.4.3). Схема адресации составной сети (в т.ч. сети Интернет) является независимой от способов адресации узлов в отдельных сетях [ 7 ] . Сетевой адрес объединяет в себе информацию об адресе сети и адресе узла в данной сети.
Для решения задачи определения сетевой части IP-адреса (количество бит в IP-адресе, отведенное для записи адреса сети, обычно располагаемое в "начале") наиболее распространен механизм сетевых масок (двоичная запись маски содержит единицы в тех разрядах, которые должны в IP-адресе интерпретироваться как номер сети).Маска может записываться в формате, подобном IP-адресу, а также путем указания количества бит, отведенных для адреса сети (например, 255.255.255.0 то же самое, что и /24 ). Результатом операции логического умножения IP-адреса и маски будет адрес сети, которой принадлежит данный узел.
Примеры интерпретации IP-адресов в зависимости от маски сети:
192.168.92.0/24 — сеть, включающая узлы от 1 до 254 ( 0 — адрес сети; 255 — зарезервирован для широковещательных рассылок, каждый последний узел в сети).
192.168.92.5 255.255.255.0 — узел в сети 192.168.92.0.
192.168.92.130/25 — узел в сети 192.168.92.128, которая включает узлы от 129 до 254.
Манипулируя масками, можно объединять и разделять диапазон IP-адресов. Например, сеть 192.168.9.0/24 может быть разбита на две подсети путем увеличения сетевой части адреса на 1 бит: 192.168.9.0/25 (узлы 1-126 ) и 192.168.9.128/25 (узлы 129-254 ).
Управление адресацией сети Интернет осуществляется по иерархической схеме (региональные центры выдачи IP-адресов - национальные центры — Интернет-провайдеры — клиенты -субклиенты и т. д.). В качестве координатора выступает некоммерческая организация ICANN (Internet Corporation for Assigned Names and Numbers). Для организации локальных (автономных) сетей (не имеющих непосредственного доступа к сети Интернет) используются зарезервированные диапазоны IP-адресов: 10.0.0.0/8, 172.16.0.0-172.31.0.0/12, 192.168.0.0/16.
Управление IP-адресами в Linux
Для того, чтобы сетевой протокол мог использовать физический интерфейс, необходимо добавить соответствующий адрес (настроить логический интерфейс). В случае стека TCP/IP минимальными настройками протокола IP, позволяющими узлу взаимодействовать с другими узлами подсети в рамках локального сегмента (широковещательного домена) являются IP-адрес и маска подсети.
Для конфигурирования протокола IP на сетевом интерфейсе с помощью командной строки можно использовать команду address (addr) утилиты ip пакета iproute2 или традиционную команду ifconfig.
Для просмотра списка IP-адресов используется команда ip addr show [ 24 ] [ 25 ] [ 26 ] . Вывод команды содержит список сетевых интерфейсов, их параметров, а также список IP-адресов ( пример 4.1.) на каждом интерфейсе. Можно вывести информацию только по данному интерфейсу, указав его имя (например, ip addr show eth0 ).
$ 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 mq state UP qlen 1000 link/ether 00:1d:72:01:ab:93 brd ff:ff:ff:ff:ff:ff inet 192.168.11.11/24 brd 192.168.11.255 scope global eth0 inet6 fe80::21d:72ff:fe01:ab93/64 scope link valid_lft forever preferred_lft forever 3: irda0: <NOARP> mtu 2048 qdisc noop state DOWN qlen 8 link/irda 00:00:00:00 brd ff:ff:ff:ff 4: vboxnet0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000 link/ether 0a:00:27:00:00:00 brd ff:ff:ff:ff:ff:ff 5: ppp0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1400 qdisc pfifo_fast state UNKNOWN qlen 3 link/ppp inet 10.31.46.4 peer 172.20.20.1/32 scope global ppp0Листинг 4.1. Отображение списка IP-адресов с использованием команды ip addr show
Каждая запись о сетевом адресе может содержать информацию о типе адреса ( inet — адрес IPv4, inet6 — IPv6 и т. д.), непосредственно адрес, маску подсети (количество сетевых бит), широковещательный адрес данной сети, область видимости ( scope global — действителен везде, scope link — только для данного устройства, scope host — для данного узла) и имя логического интерфейса.
Сведения подобного рода также предоставляет команда ifconfig, дополнительно отображая статистику работы сетевого интерфейса ( пример 4.2).
$ ifconfig eth0 eth0 Link encap:Ethernet HWaddr 00:1d:72:01:ab:93 inet addr:192.168.11.11 Bcast:192.168.11.255 Mask:255.255.255.0 inet6 addr: fe80::21d:72ff:fe01:ab93/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:69333 errors:0 dropped:0 overruns:0 frame:0 TX packets:69736 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:37148192 (37.1 MB) TX bytes:5619320 (5.6 MB) Interrupt:16Листинг 4.2. Вывод информации о сетевом интерфейсе eth0 с помощью ifconfig
Для удаления IP-адреса используется команда ip addr del пример 4.3. При этом необходимо указать удаляемый IP-адрес ( 192.168.11.11 ), маску подсети (/24) и имя интерфейса ( dev eth0 ). Изменение параметров сети требует полномочий суперпользователя.
# ip address del 192.168.11.11/24 dev eth0 # ip addr show eth0 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000 link/ether 00:1d:72:01:ab:93 brd ff:ff:ff:ff:ff:ff inet6 fe80::21d:72ff:fe01:ab93/64 scope link valid_lft forever preferred_lft foreverЛистинг 4.3. Удаление IP-адреса с интерфейса eth0 с помощью ip addr del
Для добавления IP-адреса используется команда ip addr add (пример 4.4.). При этом необходимо указать добавляемый IP-адрес, маску подсети, имя интерфейса, а также широковещательный адрес (в данном случае автоматически рассчитать широковещательный адрес на основе маски: brd +, можно также указать адрес вручную: brd 192.168.11.255 ).
# ip address add 192.168.11.11/24 brd + dev eth0Листинг 4.4. Добавление IP-адреса на интерфейс eth0 c использованием ip addr add
Добавить IP-адрес можно также с помощью команды ifconfig (пример 4.5).
# ifconfig eth0 inet up 192.168.11.11 netmask 255.255.255.0Листинг 4.5. Добавление IP-адреса на интерфейс eth0 с помощью ifconfig