2

Предположим, я использую ifconfig или какую-то подобную команду для настройки моего сетевого интерфейса и назначаю 0.0.0.0 для параметра mask. Имеет ли это особое значение? Какие последствия это может иметь?

2 ответа2

4

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

3

От АрсТехника:

Думайте о маске подсети как о фильтре для исходящего трафика. Маска подсети помогает протоколу IP определить, какой локальный трафик "локальной сети" и какой трафик необходимо перенаправить на маршрутизатор.

По сути, маска подсети 0.0.0.0 сделает его таким, чтобы весь исходящий трафик был "локальным", и ничто никогда не будет перенаправлено на маршрутизатор. Эта конфигурация должна работать нормально, если в сети нет маршрутизатора (он же Default Gateway).

Если вам нужен маршрут, вы всегда можете добавить статические маршруты в дом, используя команду ROUTE ADD (Windows, другие ОС должны иметь такую же / подобную команду).

В этом случае (с некоторыми правками для краткости). Я могу добавить сетевую маску /0 или 0.0.0.0 к интерфейсу, и она будет работать на loopback и link-local:

root@host:/tmp# ip addr add 10.0.0.0/0 dev eth0
root@host:/tmp# ip addr show
root@host:/tmp# ip a s
1: lo: <LOOPBACK,UP,LOWER_UP> ...
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
2: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> ...
    link/ether fe:dc:ba:98:76:54 brd ff:ff:ff:ff:ff:ff
    inet 10.0.0.0/0 scope global eth0
       valid_lft forever preferred_lft forever
3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> ...
    link/ether 01:23:45:67:89:ab brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.5/24 brd 192.168.1.255 scope global wlan0
       valid_lft forever preferred_lft forever
    inet6 fe80::226:c6ff:fe4b:e38e/64 scope link 
       valid_lft forever preferred_lft forever
root@host:/tmp# ping 10.0.0.0
PING 10.0.0.0 (10.0.0.0) 56(84) bytes of data.
64 bytes from 10.0.0.0: icmp_seq=1 ttl=64 time=0.033 ms
64 bytes from 10.0.0.0: icmp_seq=2 ttl=64 time=0.036 ms
^C
--- 10.0.0.0 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 999ms
rtt min/avg/max/mdev = 0.033/0.034/0.036/0.006 ms

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .