Настройка PPPoE, ppp, IPFW, kernel NAT

Проблемы установки, настройки и работы Правильной Операционной Системы

Модератор: terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
levonti
проходил мимо
Сообщения: 7
Зарегистрирован: 2008-02-10 18:28:47

Настройка PPPoE, ppp, IPFW, kernel NAT

Непрочитанное сообщение levonti » 2009-10-17 11:40:41

Исходные данные:
FreeBSD 7.2
Ядро собрано с опциями:

Код: Выделить всё

options         IPFIREWALL
options         IPFIREWALL_VERBOSE
options         IPFIREWALL_VERBOSE_LIMIT=50
options         IPFIREWALL_NAT
options         LIBALIAS
options         ROUTETABLES=2
options         DUMMYNET
options         HZ="1000"
Два сетевых интерфейса:
первый rl0 - локальная сеть 192.168.1.0/24 (ip freebsd 192.168.1.10)
192.168.1.1 adsl модем шлюз во внешнюю сеть в режиме роутера (локальная адресация 172.16.0.0/12)
192.168.1.2 d-link dir-100 в режиме роутера режим провайдера PPTP (локальная адресация 10.x.x.x/24 (адрес роутера 10.y.y.y), 80 порт натится на порт 7676 192.168.1.10 )
второй rl1 - шнурок провайдера PPPoE.
работает с помощью ppp, ip присваивается динамически, поднимаемый интерфейс - tun0

Задача:
1. Пробросить порт для локальных клиентов 10.x.x.x/24 в сеть 172.16.0.0/12
2. Доступ freebsd в интернет через провайдера PPPoE
3. Пробросить порт для внешних клиентов через провайдера PPPoE в сеть 172.16.0.0/12 (в плане)

Исполнение:
rc.conf

Код: Выделить всё

ifconfig_rl0="inet 192.168.1.10 netmask 255.255.255.0"
defaultrouter="192.168.1.2"
route add 172.16.0.0 192.168.1.1 -netmask 255.240.0.0
hostname="myhost.ru"
sshd_enable="YES"
gateway_enable="YES"
firewall_enable="YES"
firewall_script="/etc/rc.ipfw"
firewall_logging="YES"
font8x14="cp866-8x14"
font8x16="cp866b-8x16"
font8x8="cp866-8x8"
scrnmap="koi8-r2cp866"
ntpd_enable="YES"
ppp_enable="YES"
ppp_mode="ddial"
ppp_nat="NO
"

/etc/rc.ipfw

Код: Выделить всё

#!/bin/sh
ipfw -q -f flush      #clean
oif="rl0"             
tif="tun0"                    
cmd="ipfw -q add "
ks="keep-state"
# load
$cmd 00100 pass all from any to any via lo0
$cmd 00101 deny all from any to 127.0.0.0/8
$cmd 00102 deny all from 127.0.0.0/8 to any
$cmd 00500 check-state
$cmd 00502 deny all from any to any frag
$cmd 00501 deny tcp from any to any established
$cmd 00600 allow tcp from any to any out via $oif setup $ks
$cmd 00601 allow udp from any to any out via $oif $ks
$cmd 00602 allow tcp from any to any out via $tif setup $ks
$cmd 00603 allow tcp from any to any out via $tif $ks
$cmd 00650 allow udp from any to any 53 via tun0
$cmd 00651 allow udp from any 53 to any via tun0
$cmd 00652 allow udp from any to any 123 via tun0
$cmd 00653 allow udp from any 123 to any via tun0
# ping
$cmd 02000 allow icmp from any to any out icmptype 8
$cmd 02001 allow icmp from any to any in icmptype 0

ipfw nat 123 config ip 192.168.1.10 log same_ports redirect_port tcp 172.x.x.x:80 192.168.1.10:7676
ipfw add 00090 nat 123 tcp from 172.x.x.x 80 to any
ipfw add 00091 nat 123 tcp from any to 172.x.x.x 80
ipfw add 00092 nat 123 ip from any to 192.168.1.10 7676
$cmd 02002 deny log ip from any to any
/etc/ppp/ppp.conf

Код: Выделить всё

default:
        set log Phase tun command
        set timeout 0
        enable dns
        set mru 1440
        set mtu 1440
cinet:
        set device PPPoE:rl1
        set authname xxxx
        set authkey yyyyy
        set dial
        set login
        set ifaddr 0 0
        add default HISADDR

netstat -rn при поднятом tun0

Код: Выделить всё

default            213.129.104.1      UGS         0       83   tun0
127.0.0.1          127.0.0.1          UH          0       51    lo0
172.16.0.0/12      192.168.1.1        UGS         0        0    rl0
192.168.1.0/24     link#1             UC          0        0    rl0
192.168.1.1        link#1             UHLW        6        0    rl0
213.129.104.1      213.129.110.248    UGH         1        0   tun0
Так вот доступ на проброшенный порт из локальной сети 192.168.1.0/24 192.168.1.10:7676 работает, по локальному адресу 10.y.y.y:80 не работает.
При попытке подключения tcpdump выдает следующее

Код: Выделить всё

13:12:49.367304 IP 10.y.y.y.6021 > myhost.ru.7676: S 1141608668:1141608668(0) win 65535 <mss 1460,nop,nop,sackOK>
13:12:49.367379 IP myhost.ru.6021 > 172.x.x.x.http: S 1141608668:1141608668(0) win 65535 <mss 1460,nop,nop,sackOK>
13:12:49.389370 IP 172.x.x.x.http > myhost.ru.6021: S 1971473988:1971473988(0) ack 1141608669 win 5840 <mss 1452,nop,nop,sackOK>
13:12:49.786569 IP 172.x.x.x.http > myhost.ru.6021: S 1971473988:1971473988(0) ack 1141608669 win 5840 <mss 1452,nop,nop,sackOK>
При отключении PPPoE
tcpdump

Код: Выделить всё

13:41:54.676621 IP 10.y.y.y.5325 > myhost.ru.7676: S 1859151462:1859151462(0) win 65535 <mss 1460,nop,nop,sackOK>
13:41:54.676780 IP myhost.ru.5325 > 172.x.x.x.http: S 1859151462:1859151462(0) win 65535 <mss 1460,nop,nop,sackOK>
13:41:54.699954 IP 172.x.x.x.http > myhost.ru.5325: S 3606102377:3606102377(0) ack 1859151463 win 5840 <mss 1452,nop,nop,sackOK>
13:41:54.699991 IP myhost.ru.7676 > 10.y.y.y.5325: S 3606102377:3606102377(0) ack 1859151463 win 5840 <mss 1452,nop,nop,sackOK>
13:41:54.701152 IP 10.y.y.y.5325 > myhost.ru.7676: . ack 1 win 65535
13:41:54.701185 IP myhost.ru.5325 > 172.x.x.x.http: . ack 1 win 65535

Если не поднимать PPPoE то доступ работает, где что не так?
Проблема решена. Не хватало

Код: Выделить всё

route add 10.0.0.0 192.168.1.2 -netmask 255.0.0.0

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Гость
проходил мимо

Re: Настройка PPPoE, ppp, IPFW, kernel NAT

Непрочитанное сообщение Гость » 2009-10-17 18:32:17

тут всё красиво написано.
http://www.lissyara.su/?id=1967

для рррое я ещё добавил в /etc/ppp/ppp.conf
nat enable yes
после чего у меня всё нормально заработало))

Аватара пользователя
Aligarh
мл. сержант
Сообщения: 101
Зарегистрирован: 2009-10-17 23:33:35
Контактная информация:

Re: Настройка PPPoE, ppp, IPFW, kernel NAT

Непрочитанное сообщение Aligarh » 2009-10-17 23:46:51

Такой вопрос:
ADSL-провайдер выдаёт динамический адрес при поднятии PPPoE. Однако, если указать какой-то адрес из диапазонов провайдера в модеме или в винде в свойствах соединения, то именно с этим адресом и выйдешь в интернет. Вопрос: где во фре можно указать этот адрес? Пробовал указывать его в ppp.conf "set ifaddr" - при подключении в логе пишет

Код: Выделить всё

Oct 18 00:26:26 FreeBSD_Gateway ppp[5024]: tun0: Phase: x.x.x.x: Unacceptable address!
(где x.x.x.x - адрес, который предлагает провайдер) и отключается.
1. Работает - не трогай.
2. Плохо работает - убедись в возможности отмены изменений.

paradox
проходил мимо
Сообщения: 11620
Зарегистрирован: 2008-02-21 18:15:41

Re: Настройка PPPoE, ppp, IPFW, kernel NAT

Непрочитанное сообщение paradox » 2009-10-18 1:41:51

ADSL-провайдер выдаёт динамический адрес при поднятии PPPoE. Однако, если указать какой-то адрес из диапазонов провайдера в модеме или в винде в свойствах соединения, то именно с этим адресом и выйдешь в интернет
что за бред
а если под таким же адрессом уже ктото сидит уже у вашего провайдера?
будет два клиента которые используют одинаковые айпи адресса?

Аватара пользователя
Aligarh
мл. сержант
Сообщения: 101
Зарегистрирован: 2009-10-17 23:33:35
Контактная информация:

Re: Настройка PPPoE, ppp, IPFW, kernel NAT

Непрочитанное сообщение Aligarh » 2009-10-18 1:50:20

paradox писал(а):будет два клиента которые используют одинаковые айпи адресса?
В таком случае не пустит с ошибкой. У меня сервер круглосуточно включен, я выбрал себе один IP, и постоянно его использую, так что никто его не займёт. Просто мне платить за статический IP не хочется, а он нужен, вот я и нашел приемлемое решение, только не могу реализовать это всё на фряхе.
1. Работает - не трогай.
2. Плохо работает - убедись в возможности отмены изменений.

paradox
проходил мимо
Сообщения: 11620
Зарегистрирован: 2008-02-21 18:15:41

Re: Настройка PPPoE, ppp, IPFW, kernel NAT

Непрочитанное сообщение paradox » 2009-10-18 2:00:53

мне чесно говоря не вериться что таким образом все равно используеться тот айпи который вы прописываете себе

и
Oct 18 00:26:26 FreeBSD_Gateway ppp[5024]: tun0: Phase: x.x.x.x: Unacceptable address!
слишком маленький лог
а у комманды set ifaddr довольно таки много аргументов кроме как один айпишник
попробуйте правиьльно задать параметры

Аватара пользователя
Aligarh
мл. сержант
Сообщения: 101
Зарегистрирован: 2009-10-17 23:33:35
Контактная информация:

Re: Настройка PPPoE, ppp, IPFW, kernel NAT

Непрочитанное сообщение Aligarh » 2009-10-18 2:30:56

Хорошо, распишу всё как есть.
Конфиг:

Код: Выделить всё

  set ifaddr 77.234.7.7/32 10.0.0.1/0 0.0.0.0 0.0.0.0
Лог:

Код: Выделить всё

Oct 18 03:16:55 FreeBSD_Gateway ppp[7604]: tun0: Phase: deflink: Disconnected!
Oct 18 03:16:55 FreeBSD_Gateway ppp[7604]: tun0: Phase: deflink: lcp -> logout
Oct 18 03:16:55 FreeBSD_Gateway ppp[7604]: tun0: Phase: deflink: logout -> hangup
Oct 18 03:16:55 FreeBSD_Gateway ppp[7604]: tun0: Phase: deflink: Disconnected!
Oct 18 03:16:55 FreeBSD_Gateway ppp[7604]: tun0: Phase: deflink: Connect time: 19 secs: 252 octets in, 200 octets out
Oct 18 03:16:55 FreeBSD_Gateway ppp[7604]: tun0: Phase: deflink: 85 packets in, 80 packets out
Oct 18 03:16:55 FreeBSD_Gateway ppp[7604]: tun0: Phase:  total 23 bytes/sec, peak 71 bytes/sec on Sun Oct 18 03:16:44 2009
Oct 18 03:16:55 FreeBSD_Gateway ppp[7604]: tun0: Phase: deflink: hangup -> opening
Oct 18 03:16:55 FreeBSD_Gateway ppp[7604]: tun0: Phase: bundle: Establish
Oct 18 03:16:55 FreeBSD_Gateway ppp[7604]: tun0: Phase: deflink: Enter pause (3) for redialing.
Oct 18 03:16:58 FreeBSD_Gateway ppp[7604]: tun0: Phase: deflink: Connected!
Oct 18 03:16:58 FreeBSD_Gateway ppp[7604]: tun0: Phase: deflink: opening -> dial
Oct 18 03:16:58 FreeBSD_Gateway ppp[7604]: tun0: Phase: deflink: dial -> carrier
Oct 18 03:17:01 FreeBSD_Gateway ppp[7604]: tun0: Phase: Received NGM_PPPOE_ACNAME (hook "VVO04-B10008-1")
Oct 18 03:17:01 FreeBSD_Gateway ppp[7604]: tun0: Phase: Received NGM_PPPOE_SESSIONID
Oct 18 03:17:01 FreeBSD_Gateway ppp[7604]: tun0: Phase: Received NGM_PPPOE_SUCCESS
Oct 18 03:17:01 FreeBSD_Gateway ppp[7604]: tun0: Phase: deflink: carrier -> login
Oct 18 03:17:01 FreeBSD_Gateway ppp[7604]: tun0: Phase: deflink: login -> lcp
Oct 18 03:17:02 FreeBSD_Gateway ppp[7604]: tun0: Warning: deflink: Reducing configured MRU from 1500 to 1492
Oct 18 03:17:02 FreeBSD_Gateway ppp[7604]: tun0: Phase: bundle: Authenticate
Oct 18 03:17:02 FreeBSD_Gateway ppp[7604]: tun0: Phase: deflink: his = CHAP 0x05, mine = none
Oct 18 03:17:02 FreeBSD_Gateway ppp[7604]: tun0: Phase: Chap Input: CHALLENGE (16 bytes from VVO04-B10008-1)
Oct 18 03:17:02 FreeBSD_Gateway ppp[7604]: tun0: Phase: Chap Output: RESPONSE (demo)
Oct 18 03:17:02 FreeBSD_Gateway ppp[7604]: tun0: Phase: Chap Input: SUCCESS
Oct 18 03:17:02 FreeBSD_Gateway ppp[7604]: tun0: Phase: deflink: lcp -> open
Oct 18 03:17:02 FreeBSD_Gateway ppp[7604]: tun0: Phase: bundle: Network
Oct 18 03:17:02 FreeBSD_Gateway ppp[7604]: tun0: Phase: deflink: IPV6CP protocol reject closes IPV6CP !
Oct 18 03:17:02 FreeBSD_Gateway ppp[7604]: tun0: Phase: 172.16.253.20: Unacceptable address!
Oct 18 03:17:02 FreeBSD_Gateway ppp[7604]: tun0: Phase: deflink: IPV6CP protocol reject closes IPV6CP !
Доказательство использования адреса:
Настройки:
Изображение
В работе:
Изображение
1. Работает - не трогай.
2. Плохо работает - убедись в возможности отмены изменений.

paradox
проходил мимо
Сообщения: 11620
Зарегистрирован: 2008-02-21 18:15:41

Re: Настройка PPPoE, ppp, IPFW, kernel NAT

Непрочитанное сообщение paradox » 2009-10-18 2:35:55

лог маленький включите более подробное логирования ppp

Аватара пользователя
Aligarh
мл. сержант
Сообщения: 101
Зарегистрирован: 2009-10-17 23:33:35
Контактная информация:

Re: Настройка PPPoE, ppp, IPFW, kernel NAT

Непрочитанное сообщение Aligarh » 2009-10-18 3:11:05

С какими опциями лог нужен? С "all" он получается слишком большой.
1. Работает - не трогай.
2. Плохо работает - убедись в возможности отмены изменений.

paradox
проходил мимо
Сообщения: 11620
Зарегистрирован: 2008-02-21 18:15:41

Re: Настройка PPPoE, ppp, IPFW, kernel NAT

Непрочитанное сообщение paradox » 2009-10-18 3:34:18

в примере по умолчанию опции те что надо

Аватара пользователя
Aligarh
мл. сержант
Сообщения: 101
Зарегистрирован: 2009-10-17 23:33:35
Контактная информация:

Re: Настройка PPPoE, ppp, IPFW, kernel NAT

Непрочитанное сообщение Aligarh » 2009-10-18 4:11:05

Если подразумевается этот пример, то тот лог как раз с теми опциями, конфиг я брал оттуда и правил под свои нужды.
1. Работает - не трогай.
2. Плохо работает - убедись в возможности отмены изменений.

paradox
проходил мимо
Сообщения: 11620
Зарегистрирован: 2008-02-21 18:15:41

Re: Настройка PPPoE, ppp, IPFW, kernel NAT

Непрочитанное сообщение paradox » 2009-10-18 10:27:13

подразумевался пример который храниться при установке

levonti
проходил мимо
Сообщения: 7
Зарегистрирован: 2008-02-10 18:28:47

Re: Настройка PPPoE, ppp, IPFW, kernel NAT

Непрочитанное сообщение levonti » 2009-10-22 18:53:58

Исходные данные:
FreeBSD 7.2
Ядро собрано с опциями:

Код: Выделить всё

options         IPFIREWALL
options         IPFIREWALL_VERBOSE
options         IPFIREWALL_VERBOSE_LIMIT=50
options         IPFIREWALL_NAT
options         LIBALIAS
options         ROUTETABLES=2
options         DUMMYNET
options         HZ="1000"
3 реальных и 2 виртуальных сетевых интерфейса:
первый rl0 - локальная сеть 192.168.1.0/24 (ip freebsd 192.168.1.10)
192.168.1.1 adsl модем шлюз во внешнюю сеть в режиме роутера (локальная адресация 172.16.0.0/12)
второй rl1 - шнурок провайдера PPPoE (резервный канал)
ip получается динамически с помощью ppp
третий rl2 - шнурок провайдера PPPTP.
10.y.y.y локальная адресация 10.x.x.x/24 (адрес шлюза 10.94.118.1)
четвертый ng0 - виртуальный, поднимается с помощью mpd4 провайдера PPPTP (адрес vpn сервера 213.234.199.4)
ip присваивается динамически
пятый tun0 - виртуальный, поднимается с помощью pppp провайдера PPPoE

Задача:
1. Пробросить порт для локальных клиентов 10.x.x.x/24 в сеть 172.16.0.0/12
2. Доступ freebsd в интернет через провайдера PPPTP и резервный PPPoE
3. Пробросить порт для внешних клиентов через провайдера PPPoE в сеть 172.16.0.0/12 (в плане)

ПРОШУ НЕ ПОСЫЛАТЬ МЕНЯ ЧИТАТЬ http://www.lissyara.su/?id=1967 - ПРОЧИТАНО ПОЛНОСТЬЮ.

Исполнение:

rc.conf

Код: Выделить всё

keymap="ru.koi8-r"
gateway_enable="YES"
ifconfig_rl0="inet 192.168.1.10 netmask 255.255.255.0"
ifconfig_rl2="inet 10.94.118.159 netmask 255.255.255.0"
route add default 10.94.118.1
route add 213.234.192.8 10.94.118.1
route add 172.16.0.0/12 192.168.1.1
route add 10.0.0.0/8 10.94.118.1

firewall_enable="YES"
firewall_script="/etc/rc.ipfw"
firewall_logging="YES"
font8x14="cp866-8x14"
font8x16="cp866b-8x16"
font8x8="cp866-8x8"
scrnmap="koi8-r2cp866"
sshd_enable="YES"
ntpd_enable="YES"
ppp_enable="YES"
ppp_mode="ddial"
ppp_nat="YES"
ppp_profile="cinet"
mpd_enable="YES"
mpd_flag="-b"
resolv.conf

Код: Выделить всё

nameserver 213.234.192.8
rc.ipfw

Код: Выделить всё

#!/bin/sh
ipfw -q -f flush      #clean
lif="rl0"             # local interface
tif="tun0"            # ppp interface
rif="rl1"             # real ppp
bif="rl2"             # real mpd interface
nif="ng0"             # mpd interface
cmd="ipfw -q add "

$cmd 1040 allow ip from any to any via $lif
ipfw nat 1 config log if $bif reset same_ports deny_in redirect_port tcp 172.z.z.z:80 80
ipfw nat 2 config log if $nif reset same_ports deny_in
ipfw nat 3 config log if $lif reset same_ports deny_in
$cmd 1030 nat 3 ip from 10.0.0.0/8 to any via $lif
$cmd 10130 nat 2 ip from any to any via $nif
$cmd 10140 nat 1 ip from any to any via $bif
netstat -rn при поднятом ng0

Код: Выделить всё

Internet:
Destination        Gateway            Flags    Refs      Use  Netif Expire
default            213.234.199.4      UGS         0   589013    ng0
10.0.0.0/8         10.94.118.1        UGS         0       69    rl2
10.94.118.0/24     link#3             UC          0        0    rl2
10.94.118.1        00:1c:f0:20:09:92  UHLW       17        0    rl2   1198
127.0.0.1          127.0.0.1          UH          0      197    lo0
172.16.0.0/12      192.168.1.1        UGS         0    17174    rl0
192.168.1.0/24     link#1             UC          0        0    rl0
213.234.192.8      10.94.118.1        UGHS        0     7350    rl2
213.234.199.4      10.94.118.1        UGHS        1   626948    rl2
mpd.conf

Код: Выделить всё

startup:
    set web ip 127.0.0.1
    set web port 5006
    set web user vpn vpn
    set web open

default:
    load vpn-pptp

vpn-pptp:
    new -i ng0 netline_pptp vpn
    set iface mtu 1460
    set iface idle 0
    set iface enable tcpmssfix
#==    set iface route default
    set iface up-script /usr/local/etc/mpd4/io-up-pptp.sh
    set iface down-script /usr/local/etc/mpd4/io-down-pptp.sh
    set auth authname mylogin
    set auth password mypass
    set link keep-alive 60 180
    set link accept chap
    set link no pap
    set link max-redial 0
    set bundle disable multilink
    set bundle disable crypt-reqd
    set bundle disable noretry
    set ccp yes mpp-e40
    set ccp no mpp-e128
    set ccp no mpp-stateless
    set ipcp no vjcomp
    open

vpn-l2tp:
    new -i ng0 corbina_l2tp l2tp
    set iface mtu 1460
    set iface idle 0
    set iface enable tcpmssfix
#==    set iface route default
    set iface up-script /usr/local/etc/mpd4/io-up-l2tp.sh
    set iface down-script /usr/local/etc/mpd4/io-down-l2tp.sh
    set auth authname mylogin
    set auth password mypass
    set link keep-alive 60 180
    set link accept chap
    set link no pap
    set link max-redial 0
    set bundle disable multilink
    set bundle disable crypt-reqd
    set bundle disable noretry
    set ipcp no vjcomp
    open  
Интернет для локальной сети отлично работает, а вот порт не пробрасывается, причем по tcpdump видно что пакет доходит до сервера 172.z.z.z и обратно до freebsd интерфейса rl0 а дальше не идет. В чем причина не могу понять!

Аватара пользователя
Aligarh
мл. сержант
Сообщения: 101
Зарегистрирован: 2009-10-17 23:33:35
Контактная информация:

Re: Настройка PPPoE, ppp, IPFW, kernel NAT

Непрочитанное сообщение Aligarh » 2009-10-22 19:23:06

Возможно, поможет portfwd?
1. Работает - не трогай.
2. Плохо работает - убедись в возможности отмены изменений.

levonti
проходил мимо
Сообщения: 7
Зарегистрирован: 2008-02-10 18:28:47

Re: Настройка PPPoE, ppp, IPFW, kernel NAT

Непрочитанное сообщение levonti » 2009-10-22 19:27:37

А поточнее как ты предлагаешь пусть portfwd через нат?
Последний раз редактировалось levonti 2009-10-22 19:30:56, всего редактировалось 1 раз.

Аватара пользователя
Aligarh
мл. сержант
Сообщения: 101
Зарегистрирован: 2009-10-17 23:33:35
Контактная информация:

Re: Настройка PPPoE, ppp, IPFW, kernel NAT

Непрочитанное сообщение Aligarh » 2009-10-22 19:30:50

Демон есть такой, /ports/net/portfwd
Конфиг лежит в /usr/local/etc/portfwd.cfg
Проброс порта между определёнными подсетями у меня сделан так:

Код: Выделить всё

listen-on 192.168.1.2
tcp 
{
  13579 {
    0.0.0.0 => 192.168.0.11:13579
  }
}
Это пробрасывается TCP порт 13579 из подсети ADSL-модема на сервер с торрентом.
Демон запускать при автозагрузке с ключом -f
1. Работает - не трогай.
2. Плохо работает - убедись в возможности отмены изменений.

levonti
проходил мимо
Сообщения: 7
Зарегистрирован: 2008-02-10 18:28:47

Re: Настройка PPPoE, ppp, IPFW, kernel NAT

Непрочитанное сообщение levonti » 2009-10-22 19:32:53

Так, попробуем, а в ipfw как пропускать клиентов на этот порт, через нат или мимо нат'а?

Аватара пользователя
Aligarh
мл. сержант
Сообщения: 101
Зарегистрирован: 2009-10-17 23:33:35
Контактная информация:

Re: Настройка PPPoE, ppp, IPFW, kernel NAT

Непрочитанное сообщение Aligarh » 2009-10-22 19:33:43

levonti писал(а):А поточнее как ты предлагаешь пусть portfwd через нат?
А в чём проблема? Он примет соединение с одной сетевой карты и переправит на другую, или в инет, если надо.
1. Работает - не трогай.
2. Плохо работает - убедись в возможности отмены изменений.

Аватара пользователя
Aligarh
мл. сержант
Сообщения: 101
Зарегистрирован: 2009-10-17 23:33:35
Контактная информация:

Re: Настройка PPPoE, ppp, IPFW, kernel NAT

Непрочитанное сообщение Aligarh » 2009-10-22 19:43:24

levonti писал(а):Так, попробуем, а в ipfw как пропускать клиентов на этот порт, через нат или мимо нат'а?
По идее мимо. демон всё сам куда надо переправит, если правильно настроить.
1. Работает - не трогай.
2. Плохо работает - убедись в возможности отмены изменений.

levonti
проходил мимо
Сообщения: 7
Зарегистрирован: 2008-02-10 18:28:47

Re: Настройка PPPoE, ppp, IPFW, kernel NAT

Непрочитанное сообщение levonti » 2009-10-22 20:48:20

Спасибо, получилось.
Добавил в ipfw

rc.ipfw

Код: Выделить всё

$cmd 1050 allow ip from any to 10.y.y.y 80 via $bif
/usr/local/etc/portfwd.cfg

Код: Выделить всё

listen-on 10.y.y.y
tcp
{
  80 { => 172.z.z.z:80 }
}