URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 46637
[ Назад ]

Исходное сообщение
"FreeBSD+NAT - до докам и ману не могу настроить, помогите !!!"

Отправлено tzirulnicov , 30-Июл-04 07:42 
У меня в сервере три сетевухи.
Одна с интерфейсом vr0 смотрит в интернет, две других, rl0 и ed0 -
в локальные сети.
Ядро собрано с опциями

options         IPFIREWALL
options         IPFIREWALL_VERBOSE
options         IPFIREWALL_VERBOSE_LIMIT=100

options         IPDIVERT # Enable NAT

В rc.conf вписано

hostname="xxx.ru"
nfs_server_enable="YES"# Для бездисковых станций
gateway_enable="YES"# For NAT
firewall_enable="YES"
#firewall_type="/etc/ipfw.rules"
firewall_type="OPEN"
natd_enable="YES"
natd_interface="vr0"
natd_flags=""
keymap="ru.koi8-r"
keychange="61 ^[[K"
scrnmap="koi8-r2cp866"
font8x16="cp866-8x16"
font8x14="cp866-8x14"
font8x8="cp866-8x8"
keyrate="fast"
#Mouse
moused_enable="YES"
moused_type="auto"      #
moused_port="/dev/cuaa1"
moused_flags="-3"
named_enable="YES"
sendmail_enable="YES"
inetd_enable="YES"
sshd_enable="YES"
enable_quotas="NO"
check_quotas="NO"
ifconfig_rl0="inet 192.168.1.100 netmask 255.255.255.0 media 100BaseTX"
ifconfig_vr0="inet 19a.13b.3c.18d netmask 255.255.255.0 media 100BaseTX"
ifconfig_ed0="inet 192.168.2.100 netmask 255.255.255.0"
#.1 - внутренний номер сети
ifconfig_ed0_ipx="ipx 0x00010010.1"
defaultrouter="19a.13b.3c.19e"

В клиентских машинах локальной сети win98 в свойствах карт указан
Шлюз 192.168.1.100. Машины в сети 192.168.1 видят только
192.168.1.100, но даже 19a.13b.3c.18d с них не пингуется... :(

Пробовал

    /sbin/ipfw -f flush
    /sbin/ipfw add divert natd all from any to any via vr0
    /sbin/ipfw add pass all from any to any

- бестолку... :(

P.S. Под a,b,c,d,e скрываются цифры, разумеется.

Что делать ? Помогите !!!


Содержание

Сообщения в этом обсуждении
"FreeBSD+NAT - до докам и ману не могу настроить, помогите !!..."
Отправлено tom_alex , 30-Июл-04 08:36 
>У меня в сервере три сетевухи.
>Одна с интерфейсом vr0 смотрит в интернет, две других, rl0 и ed0
>-
>в локальные сети.
>Ядро собрано с опциями
>
>options         IPFIREWALL
>options         IPFIREWALL_VERBOSE
>options         IPFIREWALL_VERBOSE_LIMIT=100
>
>options         IPDIVERT # Enable
>NAT
>
>В rc.conf вписано
>

создай файлик в /usr/local/etc/rc.d/ipfw.sh

#!/bin/sh
natd -f /etc/natd.conf
ipfw add 555 divert natd all from any to any via vr0
ipfw add 601 pass all from any to any


и /etc/natd.conf
(что нить наподобие)
alias_address xxx.xxx.xxx.xxx (внешний интерфейс)
target_address ххх.ххх.ххх.ххх(внутренний интерфейс)
log yes
log_denied yes
use_sockets yes
same_ports yes
unregistered_only yes


и REBOOT  (а мы крепчаем )))))


"FreeBSD+NAT - до докам и ману не могу настроить, помогите !!..."
Отправлено tzirulnicov , 31-Июл-04 00:37 
Не помогло.

"FreeBSD+NAT - до докам и ману не могу настроить, помогите !!..."
Отправлено beep , 30-Июл-04 08:36 
тебе надо натить не только траф внешнего интерфейса,
внутреннего тоже (в правилах ipfw рядышком с
> add divert natd all from any to any via vr0)

"FreeBSD+NAT - до докам и ману не могу настроить, помогите !!..."
Отправлено Victor , 30-Июл-04 11:21 
У меня работает такая конструкция:

rl1 - внешний интерфейс
rl0, ed0 -  две сетки на внутренних интерфейсах

ipfw:

allow ip from any to any via lo0
deny ip from any to 127.0.0.0/8
deny icmp from any to any frag
allow icmp from any to any
allow ip from any to any out xmit rl0
allow ip from any to any out xmit ed0
divert 8668 ip from any to any via rl1
allow ip from <внешний IP> to any out xmit rl1
allow ip from 192.168.4.0/24 to 192.168.4.0/24 <это адреса на rl0>
allow ip from 192.168.5.0/24 to 192.168.5.0/24 <это адреса на ed0>

такая часть для каждого пользователя:
allow tcp from 192.168.4.хх to any
allow tcp from any to 192.168.4.хх established

В rc.conf:
natd_enable="YES"
natd_interface="rl1"
natd_flags="-m -s -d"

Про ядро не говорю : смотреть /usr/src/sys/i386/conf/LINT


"FreeBSD+NAT - до докам и ману не могу настроить, помогите !!..."
Отправлено Mitch , 31-Июл-04 05:36 
глянь что у тебя с роутингом
netstat -nr
включен ли форвардинг - судя по rc.conf должен быть включен
sysctl -a | grep forwarding
что в фаерфоле
ipfw sh
и запущен ли natd, и как запущен
ps ax | grep natd

=========================
FreeBSD, Linux
Администрирование и Консультации
http://aka-root.com/


"FreeBSD+NAT - до докам и ману не могу настроить, помогите !!..."
Отправлено tzirulnicov , 31-Июл-04 12:51 
>глянь что у тебя с роутингом
>netstat -nr

Routing tables

Internet:
Destination        Gateway            Flags    Refs      Use  Netif Expire
default            194.135.36.193     UGSc       14        0    vr0
127.0.0.1          127.0.0.1          UH         12      269    lo0
192.168.1          link#3             UC          1        0    rl0
192.168.1.1        00:40:f4:6f:51:0f  UHLW        1      280    rl0   1018
192.168.2          link#1             UC          0        0    ed0
194.135.36         link#2             UC          1        0    vr0
194.135.36.193     00:04:23:a6:90:9c  UHLW       15        0    vr0   1010

IPX:
Destination        Gateway            Flags    Netif Expire
10010.*            10010.1            U         ed0

Internet6:
Destination                       Gateway                       Flags      Netif
Expire
::1                               ::1                           UH          lo0
fe80::М0/64                     link#1                        UC          ed0
fe80::200:21ff:fe4c:924cМ0      00:00:21:4c:92:4c             UHL         lo0
fe80::%vr0/64                     link#2                        UC          vr0
fe80::202:44ff:fe87:fc7b%vr0      00:02:44:87:fc:7b             UHL         lo0
fe80::%rl0/64                     link#3                        UC          rl0
fe80::240:f4ff:fe6f:572c%rl0      00:40:f4:6f:57:2c             UHL         lo0
fe80::%lo0/64                     fe80::1%lo0                   Uc          lo0
fe80::1%lo0                       link#5                        UHL         lo0
ff01::/32                         ::1                           U           lo0
ff02::М0/32                     link#1                        UC          ed0
ff02::%vr0/32                     link#2                        UC          vr0
ff02::%rl0/32                     link#3                        UC          rl0
ff02::%lo0/32                     ::1                           UC          lo0

>включен ли форвардинг - судя по rc.conf должен быть включен
>sysctl -a | grep forwarding

net.inet.ip.forwarding: 1
net.inet.ip.fastforwarding: 0
net.ipx.ipx.ipxforwarding: 0
net.inet6.ip6.forwarding: 0

>что в фаерфоле
>ipfw sh

00010  620 224352 divert 8668 ip from any to any via vr0
00020 1573 483486 allow ip from any to any
65535    0      0 deny ip from any to any

>и запущен ли natd, и как запущен
>ps ax | grep natd

  218  ??  Ss     0:00,30 /sbin/natd -n vr0
  734  p0  RL+    0:00,02 grep natd


"FreeBSD+NAT - до докам и ману не могу настроить, помогите !!..."
Отправлено tzirulnicov , 31-Июл-04 12:52 
Не помогло.

>Про ядро не говорю : смотреть /usr/src/sys/i386/conf/LINT
Нету у меня этого...


"FreeBSD+NAT - до докам и ману не могу настроить, помогите !!..."
Отправлено tzirulnicov , 31-Июл-04 12:54 
Поподробней, плиз. Впрочем, пробовал
natd -f /etc/natd.conf

natd.conf:

alias_address 19*.13*.3*.18*
target_address 192.168.1.100
log yes
log_denied yes
use_sockets yes
same_ports yes
unregistered_only yes

- не помогло... :(