|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Vladimir Kurtukov 2:5006/9 26 Apr 2004 13:10:24 To : Sergey A. Cherukhin Subject : ipwf+natd+ppp --> ipfw+ipnat+mpd -------------------------------------------------------------------------------- 26 Apr 04 08:40, you wrote to me: >> ipa через bpf работает ? тогда с адресами в нем будет все в порядке. SC> ipa использует счетчики ipfw ууу, тогда ядро патчить -+- cut here --- переносить в netinet/ip_input.c, если надо иметь в ipfw внешние адреса (до nat на input и после nat на output); в netinet/ip_output.c, если надо иметь в ipfw внутренние адреса (после nat на input и до nat на output). например такой вот патчик, в ipfw имеем внутренние адреса ъ-ДДДДДДДДДДДДДДД[ Begin of 1.diff ]ДДДДДДДДДДДДДД--ъ -+- netinet/ip_output.c.std Sat Mar 13 17:44:24 2004 +++ netinet/ip_output.c Fri Apr 2 19:25:21 2004 @@ -724,14 +724,6 @@ * - Wrap: fake packet's addr/port <unimpl.> * - Encapsulate: put it in another IP and send out. <unimp.> */ - if (fr_checkp) { - struct mbuf *m1 = m; - - if ((error = (*fr_checkp)(ip, hlen, ifp, 1, &m1)) || !m1) - goto done; - ip = mtod(m = m1, struct ip *); - } - /* * Check with the firewall... * but not if we are already being fwd'd from a firewall. @@ -964,6 +956,15 @@ } pass: + + if (fr_checkp) { + struct mbuf *m1 = m; + + if ((error = (*fr_checkp)(ip, hlen, ifp, 1, &m1)) || !m1) + goto done; + ip = mtod(m = m1, struct ip *); + } + /* 127/8 must not appear on wire - RFC1122. */ if ((ntohl(ip->ip_dst.s_addr) >> IN_CLASSA_NSHIFT) == IN_LOOPBACKNET || (ntohl(ip->ip_src.s_addr) >> IN_CLASSA_NSHIFT) == IN_LOOPBACKNET) { ъ-ДДДДДДДДДДДДДДД[ End of 1.diff ]ДДДДДДДДДДДДДД--ъ -+- cut here --- [skipped....] >> загрузи ng_ether до запуска mpd SC> Я их вообще хочу в ядро запихать, но вот что непонятно: когда я в SC> первый раз вызывал mdp, все нужные модули подгрузились сами, а при SC> загрузке - нет, и когда я после загрузки прибил mpd и попытался снова SC> загрузить вручную, как в первый раз, тоже нет. Шайтан, однако. на шайтана лучше не надеяться ;-) Vladimir --- GoldED+/BSD 1.1.4.7 * Origin: Unix powered... (2:5006/9) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/1451408ca881.html, оценка из 5, голосов 10
|