|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Eugene Grosbein 2:5006/1 29 Mar 2007 22:10:06 To : Gregory Edigarov Subject : Re: mpd && idc modem in leased line mode -------------------------------------------------------------------------------- 29 мар 2007, четверг, в 16:34 KRAST, Gregory Edigarov написал(а): GE>> При этом pppd на этой линии встает и работает без проблем, но нужно все GE>> перевести на mpd, из-за известных проблем с локами в ppp(4). >> Отключение mpsafe не помогает pppd? GE> Hе знаю.... Времени нету на проверки. Тут еще хрень выискалась, стоит GE> quagga. Так оно, похоже, в упор не видит ng интерфейсы: GE> 2007/03/29 16:21:24 RIP: Neighbor 192.168.200.131 doesnt have connected GE> interface! GE> 2007/03/29 16:21:24 RIP: Neighbor 192.168.200.133 doesnt have connected GE> interface! GE> 2007/03/29 16:23:09 RIP: rip_read: cannot find interface for packet from GE> 192.168.200.133 port 520 GE> 2007/03/29 16:23:14 RIP: rip_read: cannot find interface for packet from GE> 192.168.200.131 port 520 GE> Соответственно, таблица роутинга не обновляется. GE> При этом: GE> ng0: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> mtu 1400 GE> inet 192.168.200.129 --> 192.168.200.133 netmask 0xffffffff GE> ng1: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> mtu 1500 GE> inet 192.168.200.129 --> 192.168.200.131 netmask 0xffffffff GE> ng2: flags=8890<POINTOPOINT,NOARP,SIMPLEX,MULTICAST> mtu 1500 GE> ng3: flags=8890<POINTOPOINT,NOARP,SIMPLEX,MULTICAST> mtu 1500 GE> ng4: flags=8890<POINTOPOINT,NOARP,SIMPLEX,MULTICAST> mtu 1500 GE> ng5: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> mtu 1500 GE> inet 192.168.200.193 --> 192.168.200.194 netmask 0xffffffff GE> И чего ему надо? Квагга какой версии-то? Возможно, это из-за того что у тебя интерфейсы имеют одинаковые локальные IP. Если есть возможность, попробуй выдавать разные, если поможет, значит это бага в квагге. Есть у меня патчик в ядро на эту тему, но он для четверки, на шестерке не тестировался, так что use at your own risk. - --- sys/netinet/in_var.h.orig Sat Dec 15 03:09:34 2001 +++ sys/netinet/in_var.h Sun May 16 23:51:14 2004 @@ -117,6 +117,20 @@ (ifp) = (ia == NULL) ? NULL : ia->ia_ifp; \ } +#define INADDR_TO_IFP_P2P(addr, ifp) \ + /* struct in_addr addr; */ \ + /* struct ifnet *ifp; */ \ +{ \ + struct in_ifaddr *ia; \ +\ + TAILQ_FOREACH(ia, &in_ifaddrhead, ia_link) \ + if ((ia->ia_ifp->if_flags & IFF_POINTOPOINT) && \ + IA_DSTSIN(ia)->sin_addr.s_addr == (addr).s_addr) { \ + break; \ + } \ + (ifp) = (ia == NULL) ? NULL : ia->ia_ifp; \ +} + /* * Macro for finding the internet address structure (in_ifaddr) corresponding * to a given interface (ifnet structure). - --- sys/netinet/ip_output.c.orig Fri May 14 18:51:35 2004 +++ sys/netinet/ip_output.c Fri May 14 20:40:49 2004 @@ -1785,6 +1785,9 @@ *ifindexp = ifindex; } else { INADDR_TO_IFP(*a, ifp); + if (ifp == NULL) { + INADDR_TO_IFP_P2P(*a, ifp); + } } return ifp; } Eugene -- Трогай, но не пробуй на вкус --- slrn/0.9.8.0 (FreeBSD) * Origin: Svyaz Service JSC (2:5006/1@fidonet) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/26093725a527b.html, оценка из 5, голосов 10
|