Опубликован: 26.07.2011 | Уровень: для всех | Доступ: платный
Лекция 4:

Команды настройки протокола IP

< Лекция 3 || Лекция 4: 123 || Лекция 5 >

Несколько IP-адресов на одном сетевом интерфейсе

В некоторых случаях необходимо использовать несколько IP-адресов на одном сетевом интерфейсе [ 25 ] .

Пусть на сетевом интерфейсе eth1 установлен IP-адрес 192.168.11.10/24, необходимо, чтобы система принимала на этом интерфейсе входящие соединения на адрес 192.168.11.11. Добавим на интерфейс еще один адрес:

# ip addr add 192.168.11.11/24 brd + dev eth1
# ip addr show eth1
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:66:6a:4f brd ff:ff:ff:ff:ff:ff
    inet 192.168.11.10/24 brd 192.168.11.255 scope global eth1
    inet 192.168.11.11/24 brd 192.168.11.255 scope global secondary eth1
    inet6 fe80::a00:27ff:fe66:6a4f/64 scope link 
       valid_lft forever preferred_lft forever
Листинг 4.6. Добавление дополнительного IP-адреса

При добавлении адреса из той же сети, что и существующий, новый адрес становится дополнительным к существующему ( secondary ), и если удалить основной адрес, то будет удален и дополнительный.

Примечание: Команда ifconfig непосредственно не поддерживает несколько IP-адресов на одном сетевом интерфейсе (только в виде псевдонимов). Поэтому secondary - адрес в выводе ifconfig отображаться не будет:
# ifconfig eth1
eth1   Link encap:Ethernet  HWaddr 08:00:27:66:6a:4f  
          inet addr:192.168.11.10  Bcast:192.168.11.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe66:6a4f/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:74 errors:0 dropped:0 overruns:0 frame:0
          TX packets:74 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:8640 (8.4 KiB)  TX bytes:7020 (6.8 KiB)
Примечание: Для удаления всех сетевых адресов на интерфейсе можно использовать команду ip addr flush:

# ip addr flush dev eth1

# ip addr add 192.168.11.11/24 brd + dev eth1 label eth1:add
# ip addr show eth1
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:66:6a:4f brd ff:ff:ff:ff:ff:ff
    inet 192.168.11.10/24 brd 192.168.11.255 scope global eth1
    inet 192.168.11.11/24 brd 192.168.11.255 scope global secondary eth1:add
# ifconfig
eth1   Link encap:Ethernet  HWaddr 08:00:27:66:6a:4f  
          inet addr:192.168.11.10  Bcast:192.168.11.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:756 errors:0 dropped:0 overruns:0 frame:0
          TX packets:711 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:75800 (74.0 KiB)  TX bytes:68550 (66.9 KiB)
eth1:add Link encap:Ethernet  HWaddr 08:00:27:66:6a:4f  
          inet addr:192.168.11.11  Bcast:192.168.11.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
Листинг 4.7. Для реализации ifconfig - совместимого способа использования нескольких IP-адресов на одном сетевом интерфейсе следует в команде ip addr add использовать параметр label

Управление ARP-таблицей

В сегменте сети Ethernet для взаимодействия устройств друг с другом по протоколу IP необходимо, чтобы у передающего устройства были логический (IP-) и физический (MAC-) адреса получателя. Для решения задачи определения MAC-адреса узла назначения по его IP-адресу в локальном сегменте используется протокол ARP (Address Resolution Protocol) [ 7 ] .Принцип действия протокола ARP заключается в том, что отправитель сетевого пакета посылает широковещательный ARP-запрос (на широковещательный MAC-адрес FF:FF:FF:FF:FF:FF) с указанием искомого IP-адреса. ARP-запрос получают все устройства в сегменте, но только тот, чей IP-адрес является искомым, отправляет ARP-ответ (на MAC-адрес отправителя) с указанием своего MAC-адреса.

Каждый узел локальной сети поддерживает ARP-таблицу (кэш), которая устанавливает соответствие между IP и MAC-адресами узлов подсетей, в которые входит данный узел. В ARP-таблице имеются два вида записей:

  • Динамические записи, которые периодически обновляются с использованием протокола ARP (если запись "устаревает", то она удаляется).
  • Статические записи, которые создаются пользователем с помощью соответствующих команд и существуют до тех пор, пока узел не будет выключен.

Используя команду ip neigh или традиционную команду arp можно манипулировать содержимым ARP-таблицы.

Пример 4.8. Просмотр ARP-таблицы.

Если узел 192.168.11.10 через интерфейс eth1 осуществит сетевое взаимодействие с узлом 192.168.11.12 (например, с помощью утилиты ping ), то в его ARP-таблице появится новая запись, которую можно просмотреть командой ip neigh show (параметр dev указывает фильтровать записи относящиеся к интерфейсу eth1 ):

# ping -c 1 192.168.11.12
PING 192.168.11.12 (192.168.11.12) 56(84) bytes of data.
64 bytes from 192.168.11.12: icmp_seq=1 ttl=64 time=1.58 ms
--- 192.168.11.12 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 1.588/1.588/1.588/0.000 ms
 #  ip neigh show dev eth1
192.168.11.12 lladdr 08:00:27:23:22:97 REACHABLE

Пример 4.9. Добавление статической записи в ARP-таблицу.

Для добавления статической записи в ARP-таблицу можно использовать команду ip neigh add c указанием IP-адреса, MAC-адреса (параметр lladdr ) и сетевого интерфейса (параметр dev ):

# ip neigh add 192.168.11.100 lladdr 00:00:00:00:00:AA dev eth1
# ip neigh show dev eth1
192.168.11.100 lladdr 00:00:00:00:00:aa PERMANENT

Для удаления записи из ARP-таблицы можно использовать команду ip neigh del:

# ip neigh del 192.168.11.100 dev eth1
# arp -s 192.168.11.100 00:00:00:00:00:AA
# arp -i eth1
Address  HWtype  HWaddress  Flags Mask Iface
192.168.11.100     ether   00:00:00:00:00:aa   CM  eth1
# arp -d 192.168.11.100
Листинг 4.10. Использование команды arp для манипулирования ARP-таблицей (ключ -s — добавить статическую запись, -i — фильтр интерфейса, -d— удалить запись)
< Лекция 3 || Лекция 4: 123 || Лекция 5 >
Нияз Сабиров
Нияз Сабиров

Здравствуйте. А уточните, пожалуйста, по какой причине стоимость изменилась? Была стоимость в 1 рубль, стала в 9900 рублей.

Елена Сапегова
Елена Сапегова

для получения диплома нужно ли кроме теоретической части еще и практическую делать? написание самого диплома требуется?

Сергей Тристан
Сергей Тристан
Россия, Москва
Андрей Фомушкин
Андрей Фомушкин
Россия, Орехово-Зуево