|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Eugene B. Berdnikov 2:5020/400 30 Mar 2005 20:08:26 To : Eugene Grosbein Subject : Re: arp -------------------------------------------------------------------------------- Eugene Grosbein <Eugene.Grosbein@f1.n5006.z2.fidonet.org> wrote: EG> 29 мар 2005, вторник, в 16:08 KRAST, Eugene B. Berdnikov написал(а): EG> EG>>> 18:38:28.711898 0:3:47:32:f0:9a ff:ff:ff:ff:ff:ff 0806 60: arp who-has EG>>> x.x.64.3 (ff:ff:ff:ff:ff:ff) tell x.x.64.3 EBB>> Подозрительно, что target считается не-юникастом. EG> EG> А кем должен быть target в ARP-запросе, как не бродкастом? Правильно, но я про то, что поле THA (target hardware address - в скобках) заполнено не нулями. Спецификация arp допускает там не нули, "если это используется для конкретной реализации протокола", на практике такое я встречал у некоторых ОС при попытке послать юникастовый пакет на бродкастовый адрес, например. А солярис, по-моему, всегда шлёпает туда ff:ff:ff:ff:ff:ff. Hасчёт линукса - никогда не замечал за ним такой шизы. Послать юникастовый пакет на бродкастовый адрес он точно не даст, во всяком случае, через обычный сокет, а может ли возникнуть ситуация, когда THA заполнится не нулями - надо смотреть сорцы ядра. Я сейчас посмотрел бегло 2.4.27 - не нашёл таких мест. Мне кажется, это некий довод в пользу того, что пакет генерится HЕ линуксом. EBB>> Hе описан ли где-нибудь EBB>> по ошибке x.x.64.3 как малтикастовый адрес, для аннонса маршрутов, EBB>> например? EG> EG> Линукс не роутер, не должно такого быть. Где смотреть? Прежде всего на x.x.64.3, если он существует. И на шлюзе, однозначно. Если в сети есть машины с солярисом, проверьте обязательно. А также все машины, у которых в арповых THA сидят единицы - просканьте сеть, их легко найти. EBB>> Кстати, покажите выдачу линукса на EBB>> ip a EG> EG> 1: lo: <LOOPBACK,UP> mtu 16436 qdisc noqueue EG> link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 EG> inet 127.0.0.1/8 brd 127.255.255.255 scope host lo EG> 4: eth0: <BROADCAST,MULTICAST,AUTOMEDIA,UP> mtu 1500 qdisc pfifo_fast qlen EG> 1000 link/ether 00:03:47:32:f0:9a brd ff:ff:ff:ff:ff:ff inet EG> 192.168.0.2/24 brd 192.168.0.255 scope global eth0 5: eth1: EG> <BROADCAST,MULTICAST> mtu 1500 qdisc noop qlen 1000 link/ether EG> 00:03:47:32:f0:9b brd ff:ff:ff:ff:ff:ff Ага, карт-то две, однако. Здесь может быть возможность транзита "паразитного" трафика, если eth1 стоит в режиме бриджа. Это двухпортовый Intel или просто изернетины из одной партии? EBB>> ip m EG> EG> 1: lo EG> inet 224.0.0.1 EG> 4: eth0 EG> link 01:00:5e:00:00:fb EG> link 01:00:5e:00:00:01 EG> inet 224.0.0.1 EG> inet 224.0.0.251 Малтикастовый dns. Можно прибить это чудо для профилактики... ;) EBB>> Что говорит на линуксе ip n s ? EG> EG> 192.168.0.1 dev eth0 lladdr 00:0c:f1:b8:ce:86 nud reachable Линукс даже не пытается резолвить x.x.64.3 - делайте выводы. Согласуется с тем, что arp-запросы x.x.64.3 на линуксе не видны. EBB>> Счётчики на интерфейсах крутятся? Или это мнимые пакеты? EG> EG> В каком смысле мнимые? Счетчики крутятся - трафик-то ходит нормальный. Мнимые в том смысле, что наблюдаемый tcpdump'ом arp на самом деле не соответствует никаким передаваемым по кабелю пакетам. Достаточно перекрыть пакетными фильтрами весь ip-трафик с двух сторон и посмотреть по счётчикам, действительно ли в кабеле что-то ходит. Точнее, скажем так - 1. приходят ли эти пакеты по кабелю со стороны линукса, и 2. видит ли их линуксовый драйвер (про pcap пока не будем). EG> Гигабитного хаба нет. Кроме того, я верю FreeBSD - если она на интерфейсе EG> видит tcpdump'ом входящий пакет с чужого MAC-адрес, значит он был. Если есть рассогласование в одном методе измерений (tcpdump), то надо задействовать другие методы - счётчики пакетов, например. Согласование между линуксовым tcpdump и ip nei проверено - похоже на правду. EBB>> Если ходят - соберите на линуксе свежий tcpdump-3.8.3. EG> EG> И на линуксе и на фре одна версия tcpdump: 3.7.2. Фревый пакеты видит. EG> В общем мне не настолько хочется увидеть пакеты на линуксе, чтобы EG> на чужой в общем машине менять софт :-) А убить эти пакеты очень EG> хочется. Hу зачем менять, :) принесите бинарник (можно с либами + LD_LIBRARY_PATH) или соберите на месте - сорцы лежат на tcpdump.org. Впрочем, я склоняюсь к тому, что tcpdump не врёт. -- Eugene Berdnikov --- ifmail v.2.15dev5.3 * Origin: Institute for High Energy Physics, Protvino, Russia (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/3651cca2bd04.html, оценка из 5, голосов 10
|