|
|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Andrey Alexeev 2:5020/400 06 Jul 2001 17:03:05 To : All Subject : Re: static arp: [загляни] --------------------------------------------------------------------------------
HI!
Я сам где-то полгода назад интересовался сабджем, получил несколько ответов
и только _один_ нормальный, причем мылом.
(я проверял на сетевухах интел, те что fxp и Фре 4.2R и 4.3S, за другие не
скажу, но дело похоже не в сетевухе т.к. патчится /sys/netinet/if_ether.c )
Дело в следующем: ключ -arp работает не корректно, он не блокирует arp до
конца!
если не верите, проверьте.
в идеале делаем:
ifconfig fxp0 -arp
arp -ad
arp -f /path/to/ethers
но на деле интерфейс спокойно принемает пакеты от тех хостов которых нет в
/path/to/ethers
пример: есть узлы
192.168.3.1 сам комп.
192.168.3.2
192.168.3.3
в /path/to/ethers только
192.168.3.2 0:0:21:a5:b6:c7
пингуем 192.168.3.3 - получаем ответ
В итоге: если юзер возьмет IP другого, то лажа выйдет, а если свободный, то
все ОК
можно все порезать ipfw, но лучше чтоб -arp доделали
патч старый, присланный добрым человеком,
разобраться легко, что куда. (ручками)
********************************************************
после этого патча флаг NOARP на интерфейсе полностью
замораживает ARP-таблицу. содержимое таблицы может быть изменено
только с помощью /usr/sbin/arp
- --- if_ether.c.std Thu Sep 10 18:22:48 1998
+++ if_ether.c Fri Sep 11 16:53:22 1998
@@ -482,6 +482,7 @@
itaddr = myaddr;
goto reply;
}
+/*VV*/ if (!(ac->ac_if.if_flags & IFF_NOARP)) {
la = arplookup(isaddr.s_addr, itaddr.s_addr == myaddr.s_addr, 0);
if (la && (rt = la->la_rt) && (sdl = SDL(rt->rt_gateway))) {
if (sdl->sdl_alen &&
@@ -501,6 +502,7 @@
la->la_hold = 0;
}
}
+/*VV*/ }
reply:
if (op != ARPOP_REQUEST) {
m_freem(m);
**************************************************************
Алексеев Андрей
--- ifmail v.2.15dev5
* Origin: RIPN/Russia (2:5020/400)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/102601e3d9b82.html, оценка из 5, голосов 10
|