Сети TCP/IP > IP-адреса

Специальные IP-адреса

Существует ряд IP-адресов, которые не могут быть использованы как стандартные IP-адреса, так как они зарезервированы для специальных целей. Например:

  1. 10.*.*.* (сеть класса A), 192.168.*.* (набор сетей класса C) – зарезервированы для создания локальной сети.
  2. 127.*.*.* (сеть класса А) – зарезервирована для локального компьютера, т.о. 127.0.0.1 – это IP адрес, через который компьютер может "разговаривать" сам с собой (при помощи loopback interface), так же как и с другими компьютерами. Это было придумано для того, чтобы можно было не различать две ситуации: когда сервер находится на чужом компьютере, и когда он находится на родном компьютере. То есть запрос идет на прямую по адресу 127.0.0.1. В противном случае пришлось бы прописать одну и туже часть кода дважды.

Программа ifconfig

При запуске программы ifconfig, выдается таблица, в которой прописаны интерфейсы, имеющиеся на данной машине (пока мы расмотрим по одной строке из описания каждого интерфейса).

$ /sbin/ifconfig
eth0      inet addr:192.168.5.118  Bcast:192.168.5.255  Mask:255.255.255.0
lo        inet addr:127.0.0.1  Mask:255.0.0.0

Network mask – маска IP-адресов машин, которые лежат в данной локальной сети. Маска представлят из себя двоичное число, в котором первые несколько бит единицы, а все остальные – нули. Пусть маска содержит n единиц. Это означает, что в данной локальной сети находятся машины, у которых первые n бит IP-адреса совпадают с первыми n битами IP-адреса данного компьютера.

Пример

первый байт второй байт третий байт четвёртый байт
IP address 11000000
(192)
10110000
(176)
10101010
(170)
11110000
(240)
Network mask 11111111
(255)
11111111
(255)
11111111
(255)
11000000
(192)
IP-адреса,
соответcтвующие
данной маске
11000000
(192)
10110000
(176)
10101010
(170)
11******
(192—255)

Данной маске соответcтвуют следующие адреса: 11000000, 10110000, 10101010, 11****** (от 192.176.170.192 до 192.176.170.255).

Маршрутизация и программа route

Программа route выдает таблицу маршрутизации. В таблице написано куда будут посланы пакеты, отправленные на определенные IP-адреса.

$ /sbin/route -ne
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
194.85.238.0    0.0.0.0         255.255.255.128 U        40 0          0 eth0
192.168.5.0     0.0.0.0         255.255.255.0   U        40 0          0 eth1
0.0.0.0         194.85.238.1    0.0.0.0         UG       40 0          0 eth0

Это означает, что все запросы, отправленные на адреса, совпадающие по маске 255.255.255.128 с адресом 194.85.238.0 (то есть, на адреса от 194.85.238.0 до 194.85.238.127), отправляются в локальную сеть напрямую через интерфейс eth0. Аналогично, запросы, отправленные на адреса, совпадающие по маске 255.255.255.0 с адресом 192.168.5.0, отправляются в локальную сеть напрямую через интерфейс eth1. Все остальные запросы отправляются на машину с IP-адресом 194.85.238.1, откуда они будут отправлены далее. Машина, которая пересылает пакеты, называется gateway.

Александр Киракозов