|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Andrey Alexeev 2:5020/400 12 Nov 2001 11:44:49 To : Vladimir Kurtukov Subject : Re: ifconfig c -arp на 4.4S -------------------------------------------------------------------------------- все именно так и было сделано я же сам примерно это и написал в конфу и само собой патч от "VV" :) но повторюсь, завис где-то через Х-малое часов... так что надо тестить, а то это не жизнь ............... "Vladimir Kurtukov" <Vladimir.Kurtukov@p1.f9.n5006.z2.fidonet.org> wrote in message news:1005488299@p1.f9.n5006.z2.ftn... > Hello Andrey. > > 09 Nov 01 11:59, you wrote to all: > > AA> Жил был роутер на 4.2R с патчем noarp.diff > AA> при установке флага -arp он arp запросы не посылал, > AA> но отвечал на запросы других узлов. Все ок. > > AA> после апгрейда до 4.4S заработал ключ -arp как написано в мане на > AA> ifconfig без всяких патчей (но заработал не так, как хотелось) что > AA> имеем: хост с ifconfig fxp0 -arp вообще отрубает ARP > > [skipped.. ..] > > AA> попробовал наложить патч > AA> на /sys/netinet/if_ether.c > > AA> пришлось ковырнуть и > AA> /sys/net/if_ethersubr.c > > AA> выкинул (в исходнике 4.2R такого куска не было ) > > > AA> if (ifp->if_flags & IFF_NOARP) { > AA> /* Discard packet if ARP is disabled on > AA> interface */ > AA> m_freem(m); > AA> return; > AA> } > > AA> все вроде заработало как в 4.2, но оказалось не долго (где то пол дня) > AA> возможно из-из отсутствия m_freem(m); > > ты не забыл из netinet/if_ether.c выкинуть проверку на IFF_NOARP ? > т.е. патч должен выглядеть где-то так: > > ъ-ДДДДДДДДДДДДДДД[ Begin of noarp4.diff ]ДДДДДДДДДДДДДД--ъ > -+- netinet/if_ether.c.orig Mon Aug 6 15:26:06 2001 > +++ netinet/if_ether.c Sun Nov 11 21:01:07 2001 > @@ -408,8 +408,10 @@ > * Probably should not allocate empty llinfo struct if we are > * not going to be sending out an arp request. > */ > +/*VK > if (ac->ac_if.if_flags & IFF_NOARP) > return (0); > +VK*/ > /* > * There is an arptab entry, but no ethernet address > * response yet. Replace the held mbuf with this > @@ -580,6 +582,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))) { > /* the following is not an error when doing bridging */ > @@ -651,6 +654,7 @@ > la->la_hold = 0; > } > } > +/*VV*/ } > reply: > if (op != ARPOP_REQUEST) { > m_freem(m); > -+- net/if_ethersubr.c.orig Wed Nov 7 22:34:36 2001 > +++ net/if_ethersubr.c Sun Nov 11 21:10:20 2001 > @@ -554,11 +554,12 @@ > break; > > case ETHERTYPE_ARP: > - if (ifp->if_flags & IFF_NOARP) { > +/*VK if (ifp->if_flags & IFF_NOARP) { *VK/ > /* Discard packet if ARP is disabled on interface */ > - m_freem(m); > +/*VK m_freem(m); > return; > } > +*VK/ > schednetisr(NETISR_ARP); > inq = &arpintrq; > break; > ъ-ДДДДДДДДДДДДДДД[ End of noarp4.diff ]ДДДДДДДДДДДДДД--ъ > > в работе проверю завтра, если получится > > Vladimir > --- ifmail v.2.15dev5 * Origin: RIPN/Russia (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/10260274a07fd.html, оценка из 5, голосов 10
|