Сначала моя конфигурация сети была такой:
$ ip a
2: em1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 3c:97:0e:bd:b1:68 brd ff:ff:ff:ff:ff:ff
inet 10.66.65.2/24 brd 10.66.65.255 scope global em1
valid_lft forever preferred_lft forever
inet6 fe80::3e97:eff:febd:b168/64 scope link
valid_lft forever preferred_lft forever
$ ip r
default via 10.66.65.254 dev em1 proto static
10.66.65.0/24 dev em1 proto kernel scope link src 10.66.65.2 metric 1
таким образом, маска подсети сети неверна. У меня нет доступа к интернету, но я могу пропинговать шлюз 10.66.65.254.
Затем я сбрасываю таблицу маршрутов и IP-адрес em1 и перезапускаю nic. И у меня есть новая таблица маршрутов и IP:
$ ip a s dev em1
2: em1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 3c:97:0e:bd:b1:68 brd ff:ff:ff:ff:ff:ff
inet 10.66.65.2/23 brd 10.66.65.255 scope global em1
valid_lft forever preferred_lft forever
inet6 fe80::3e97:eff:febd:b168/64 scope link
valid_lft forever preferred_lft forever
$ ip r
default via 10.66.65.254 dev em1 proto static
10.66.64.0/23 dev em1 proto kernel scope link src 10.66.65.2 metric 1
и теперь я могу получить доступ к Интернету.
То, что, по-моему, произошло до того, как я изменил перезапуск, выглядит следующим образом: пакет в Интернет имеет назначение, скажем, 172.1.1.1 и 10.66.65.2 в качестве источника, поэтому он просматривает таблицу маршрутов и выходит с мыслью em1, затем шлюз получил пакет, но когда пакет возвращается к em1, шлюз не может найти соответствующую запись маршрута для 10.66.65.2/24, поэтому он отбросил пакет, поэтому я не могу получить доступ к Интернету.
Но мне интересно, почему я могу пропинговать шлюз, почему он может отправить мне пакет на этот раз?
Спасибо