Недавно мы установили в нашей сети новый сервер Ubuntu 12.04LTS. Он не полностью настроен, поэтому не делает ничего, кроме sshd
и по умолчанию apache2
установить. Но сегодня вечером он, похоже, разбился. Он не отвечал ни на сеть, ни на клавиатуру. Но хуже всего то, что вся сеть была отключена.
Мои знания о сетевом стеке ниже 3 уровня OSI очень ограничены, поэтому остальное меня смущает. Когда эта машина была физически подключена к сети, никакая другая машина не могла подключиться к внешнему Интернету. Когда все было сломано, бег arp
показал, что IP-адрес нашего шлюза (10.0.1.1
) был указан как "недействительный". Отключение сервера от сети устранило проблему, а повторное подключение сломало ее снова. Значит, отказавший сервер рекламировал себя как владелец IP-адреса шлюза?
Вообще ничего нет syslog
в то время, когда это создавало проблемы. Есть идеи о том, как выяснить, что пошло не так, или что мы можем сделать, чтобы этого не случилось снова? Я не решаюсь даже вернуть машину в сеть прямо сейчас.
**** Обновить ****
Он снова разбился, и я побежал tcpdump -penn arp
(спасибо bahamat!) на несколько минут и получил это ... (временные метки и повторяющиеся строки удалены)
00:1e:65:f8:dc:24 > ff:ff:ff:ff:ff:ff, ethertype ARP (0x0806), length 60: Request who-has 10.0.1.1 tell 10.0.2.191, length 46
00:1e:65:f8:dc:24 > ff:ff:ff:ff:ff:ff, ethertype ARP (0x0806), length 60: Request who-has 10.0.1.44 tell 10.0.2.191, length 46
60:d8:19:d4:71:d6 > ff:ff:ff:ff:ff:ff, ethertype ARP (0x0806), length 60: Request who-has 10.0.1.1 tell 10.0.2.125, length 46
d4:9a:20:04:e9:78 > ff:ff:ff:ff:ff:ff, ethertype ARP (0x0806), length 42: Request who-has 192.168.1.1 tell 192.168.1.100, length 28
**** Обновление 2 ****
Когда сеть работает нормально, arping -c4 10.0.1.1
возвращает это:
ARPING 10.0.1.1
60 bytes from c0:c1:c0:77:25:8e (10.0.1.1): index=0 time=267.982 usec
60 bytes from c0:c1:c0:77:25:8e (10.0.1.1): index=1 time=422.955 usec
60 bytes from c0:c1:c0:77:25:8e (10.0.1.1): index=2 time=299.215 usec
60 bytes from c0:c1:c0:77:25:8e (10.0.1.1): index=3 time=366.926 usec
--- 10.0.1.1 statistics ---
4 packets transmitted, 4 packets received, 0% unanswered (0 extra)
Когда плохой сервер подключен, arping -c4 10.0.1.1
возвращает:
ARPING 10.0.1.1
--- 10.0.1.1 statistics ---
4 packets transmitted, 0 packets received, 100% unanswered (0 extra)
**** Контекст ****
10.0.x.x
это основная подсеть. 10.0.1.1
это главный интернет-шлюз10.0.1.44
это принтер10.0.2.*
устройства все ноутбуки / рабочие станции192.168.x.x
подсеть - ваши догадки не хуже моих. ВМ на рабочей станции? Неправильно настроенный WAP? Кто-нибудь повторно делится Wi-Fi? Машина, у которой не работает DHCP?cd:80
поэтому не указан в дампе. DHCP должен 10.0.3.3
Спасибо за любую помощь. Для меня все это ARP - вуду. Пакеты просто отправляются на IP-адреса, верно? ;)
У меня была такая же проблема. Внезапно большая часть моей сети вышла из строя. Единственное, что все еще работало, это Wi-Fi, и я мог подключиться только к маршрутизатору, не мог подключиться к глобальной сети, и ни один из компьютеров проводной локальной сети не ответил на мои эхо-запросы. После перезагрузки маршрутизатора несколько раз безрезультатно я прибег к отключению всех кабелей Ethernet. Вдруг он снова заработал, снова подключил кабели, и все вышло из строя. После небольшого количества проб и ошибок я нашел виновника; мой безголовый сервер Ubuntu 12.04. Я мог убить сеть, подключив ее, и оживить, отключив ее. В конце концов я прибег к силе. Когда он вернулся, он работал нормально, я проверил системный журнал, и, к моему большому удивлению, там не было абсолютно ничего;
Sep 17 21:21:44 *** Normal event occuring
Sep 17 21:22:16 *** Normal event occuring
Sep 17 21:22:48 *** Normal event occuring
Sep 17 21:23:20 *** Normal event occuring
Sep 17 22:45:36 Atlas kernel: imklog 5.8.6, log source = /proc/kmsg started.
Sep 17 22:45:36 Atlas rsyslogd: [origin software="rsyslogd" swVersion="5.8.6" x-pid="1048" x-info="http://www.rsyslog.com"] start
Sep 17 22:45:36 Atlas rsyslogd: rsyslogd's groupid changed to 103
Sep 17 22:45:36 Atlas rsyslogd: rsyslogd's userid changed to 101
Действительно странно и тревожно. Мало того, что мой сервер, который был стабильным с тех пор, как я его впервые запустил, вышел из строя, ему удалось подключить и остальную сеть.
Что ж, я могу вам сказать, что машина на 192.168.1.x - это MAC-адрес, выданный Apple.
Получаете ли вы запросы ARP на самом шлюзе? А как насчет сброса трафика с коммутатора? Похоже, что машине Ubuntu могут отправляться ARP-сообщения, которых не должно быть, и это может сбивать с толку переключатель.