Прошу помощи!
Не удаётся выйти в Интернет через маршрутизатор FreeBSD 7.2.Настройка BSD выполнена.
Интернет на самом маршрутизаторе работает без проблем.
Подключение PPPoE (динамическое), DNS через resolv.conf.
Пинги по локальной сети до BSD (туда-сюда) ходят.
А вот, пинги в Интернет от XP (через шлюз) не идут.
У пользователей (XP) в качестве шлюза указан адрес BSD.
Пытался подключиться без всяких ipfw/nat...ничего, с ними тоже (сейчас оставил OPEN).Всё, вроде, настроено по многочисленным handbook-ам.
=========
Ядро перекомпилировано, как требуется:options IPFIREWALL
options IPFIREWALL_VERBOSE
options IPFIREWALL_FORWARD
options IPFIREWALL_VERBOSE_LIMIT=100
options IPFIREWALL_DEFAULT_TO_ACCEPT
options NETGRAPH
options NETGRAPH_PPP
options NETGRAPH_PPTPGRE
options DUMMYNET
options IPDIVERT
=========
rc.confgateway_enable="YES"
hostname="bsd"
network_interfaces="lo0 sk0 rl0"
ifconfig_lo0="inet 127.0.0.1"
ifconfig_sk0="inet 192.168.0.1 netmask 255.255.255.0"
ifconfig_rl0="inet 192.168.1.2 netmask 255.255.255.0"
defaultrouter="192.168.1.1"
inetd_enable="YES"
firewall_enable="YES"
firewall_type="OPEN"
firewall_logging="YES"
firewall_quiet="NO"
#natd_program="/sbin/natd"
#natd_enable="YES"
#natd_interface="rl0"
#natd_flags=""
nfs_client_enable="YES"
rpcbind_enable="YES"
sendmail_enable="NO"
sendmail_submit_enable="NO"
sendmail_outbound_enable="NO"
sendmail_msp_queue_enable="NO"
ntpdate_enable="NO"
ntpdate_flags="none"
=============
resolv.confnameserver 212.120.160.130
nameserver 212.120.173.34
=============
ppp.confdefault:
ident user-ppp VERSION (built COMPILATIONDATE)
set log Phase tun command
set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0 0.0.0.0
enable dns
set speed sync
set cd 5
set ctsrts off
set dial
set login
set timeout 0
set redial 0 0
disable ipv6cp
enable lqr echo
add default HISADDRprov1:
set mru 1492
set mtu 1492
set device PPPoE:rl0
set authname "11111#11111"
set authkey 22222
=============================Что посоветуете? В чём может быть проблема? Куда смотреть?
с серыми ip в подсети и без nat врятли, только если этот nat за вас будет делать провайдер и маршрутизировать ответы к вам
>[оверквотинг удален]
>
>prov1:
> set mru 1492
> set mtu 1492
> set device PPPoE:rl0
> set authname "11111#11111"
> set authkey 22222
>=============================
>
>Что посоветуете? В чём может быть проблема? Куда смотреть?открыть для себя что такое "серые адреса" и "НАТ": что это, зачем оно и т.д.
Спасибо.
Попробую :)
>>Что посоветуете? В чём может быть проблема? Куда смотреть?Я уж так сказать за компанию.... :)
GW мы с того конца получаем, а вот нат куда в этом случае должен смотреть, в один из network_interfaces, или в созданный туннель ? (жаль, пппое под рукой нету)
Я так понял, если адрес выдаётся динамический провайдером, тогда nat привязывается к туннелю (у меня tun0).
Если статический, тогда к сетевому интерфейсу (у меня rl0).Я поэтому и запустил нат на ppp, а не через natd.
Все пишут, что лучше нету, чем ipnat, он в ядре (опять же надо перекомпилировать...), а natd внешний демон.Какая разница, я так думаю, и natd внешний, и ppp (nat) внешний ...)
Но это моё скромное предположение )...
Мне тоже интересно. Прошу прокомментировать спецов.
Про динамические не скажу, у меня вот дома статический, причем ситуация схожая - также tun0 my.my.my.my -> gw.gw.gw.gw (или наоборот, не помню).Мне вот стало интересено и я решил пошевелить мозгами:)
По идее пакеты залетающие в тун0 так или иначе проходят через рл0, но только уже обернутые в PPP. Причем в dst у оберток скорее всего стоит gw провайдера. Так что если повесить нат, не знающий о ппп, на рл0, то наверно ничего натиться и не будет, т.к. все такие обертки генерит ппп/тун0, вполне локальный процесс (а исходные пакеты вообще нельзя в рл0 опознать - они же уже заппптые).
С другой стороны можно такому нату указать тун0 в качестве интерфейса, тут у меня сомнения -- ппп стартует раньше ната, или это неважо ? Если позже, то туннель будет создан уже после загрузки ната, что может на нем сказаться. Или не может ? Если у меня две ppp сессии, как определить кто тун0, а кто тун1 ?
В инете есть примеры поднятия natd/ipfw:tun0 + ppp, проверить к сожалению не могу. Будет замечательно, если кто-нибудь п[р]ояснит поближе к сути.
Всем заранее спасибо.
Мне тоже интересно :)Я так понял, защищать надо внешний интерфейс.
Что ближе к Интернету - интерфейс карты rl0 или созданный tun0?
Я думаю, tun0.
Тогда и nat надо вешать на tun0 и в ipfw защищать tun0.Кстати, если будет несколько tun, можно в ipfw указывать "tun+"?
>Кстати, если будет несколько tun, можно в ipfw указывать "tun+"?recv | xmit | via {ifX | if* | ipno | any}
Matches packets received, transmitted or going through, respec-
tively, the interface specified by exact name (ifX), by device
name (if*), by IP address, or through some interface.похоже что tun*, хотя не совсем ясно девайс он или нет...
хотя я считаю, клиенты лана не такие уж мягкие и пушистые -- у меня они тоже явно доступ получают. а так -- deny by default для всех.
Добавил в
ppp.confnat enable yes
nat log yes
nat same_ports yes
nat use_sockets yes
nat unregistered_only yesПинги из локалки в Инет пошли.
Страницы стали грузиться только после того, как прописал DNS-ы провайдера в свойствах TCP/IP (на XP).
>[оверквотинг удален]
>
> nat enable yes
> nat log yes
> nat same_ports yes
> nat use_sockets yes
> nat unregistered_only yes
>
>Пинги из локалки в Инет пошли.
>Страницы стали грузиться только после того, как прописал DNS-ы провайдера в свойствах
>TCP/IP (на XP).Поднимите на BSD кеширующий bind и его адрес пропишите у клиентов ...
Спасибо, попробую.