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

Исходное сообщение
"iptables NAT"

Отправлено deimos.vik , 19-Фев-06 18:25 
Всем добрый день.
Хочу разобратся с такой проблемой, но ни как не получается

Есть машина c ос Linux Mandriva 2006
iptables v1.3.3
два сетевых интерфейса
eth0 10.0.0.0 netmask 255.255.255.0 (локальная сеть)
eth1 192.168.190.2 netmask 255.255.255.0 (выход на провайдера)

со стороны eth1 стоит DWL 2000 AP с ip 192.168.190.3, которая по средством  радио связи соеденяет нас с провайдером с ip 192.168.190.1. DWL работает как мост. В инет выходим с помощью VPN соединения, сервер VPN 192.168.190.1

Между сетью и провайдером нужно создать NAT, для трансляции адресов сети в адреса сети провадера т.е. 10.0.0.100 в адрес 192.168.190.100.
и так все адреса в сети. Для того чтобы в статистике провайдера отображалась с какого айпи заходили.

Сколько пробывал не получалось, если использовать Shorewall и в его конфигурационных файлах прописать

##############################################################################
#
# Shorewall 2.4  -- Network Address Translation Table
#
# /etc/shorewall/nat
#
#    This file is used to define one-to-one Network Address Translation
#    (NAT).
#
# WARNING: If all you want to do is simple port forwarding, do NOT use this
#          file. See http://www.shorewall.net/FAQ.htm#faq1. Also, in most
#       cases, Proxy ARP is a better solution that one-to-one NAT.
#
# Columns must be separated by white space and are:
#
#    EXTERNAL    External IP Address - this should NOT be the primary
#            IP address of the interface named in the next
#            column and must not be a DNS Name.
#
#    INTERFACE    Interface that you want to EXTERNAL address to appear
#                       on. If ADD_IP_ALIASES=Yes in shorewall.conf, you may
#            follow the interface name with ":" and a digit to
#            indicate that you want Shorewall to add the alias
#            with this name (e.g., "eth0:0"). That allows you to
#            see the alias with ifconfig. THAT IS THE ONLY THING
#            THAT THIS NAME IS GOOD FOR -- YOU CANNOT USE IT
#            ANYWHERE ELSE IN YOUR SHORWALL CONFIGURATION.
#
#            If you want to override ADD_IP_ALIASES=Yes for a
#            particular entry, follow the interface name with
#            ":" and no digit (e.g., "eth0:").
#    INTERNAL    Internal Address (must not be a DNS Name).
#
#       ALL INTERFACES  If Yes or yes, NAT will be effective from all hosts.
#                       If No or no (or left empty) then NAT will be effective
#                       only through the interface named in the INTERFACE
#                       column
#
#       LOCAL           If Yes or yes, NAT will be effective from the firewall
#                       system
#
# For additional information, see http://shorewall.net/NAT.htm
##############################################################################
#EXTERNAL    INTERFACE    INTERNAL    ALL        LOCAL
#                        INTERFACES
#
192.168.190.100    eth1    10.0.0.100    yes    no
#LAST LINE -- ADD YOUR ENTRIES ABOVE THIS LINE -- DO NOT REMOVE

то все работает, причем он создает внешний сетевой псевдоним, и вся та сеть видна для нашей сети...

Если есть варианты как решить эту проблему подскажите, хочется самому написать правилаа не shorewall пользоватся.

Хотел не мучатся с NAT, но маршрутизациея не работает, т.к. провайдер не знает о сущ. нашей сети...  Если прописать в DWL 192.168.190.2 как gateway  то я вижу только 192.168.190.2 и 192.168.190.3 а вот адреса  192.168.190. 1 не вижу.

если есть какие либо толковые предложения готов выслушать.

P.S.

пробывал -j NETMAP но не получилось, может кто-то подскажет как NETMAP настроить?


Содержание

Сообщения в этом обсуждении
"iptables NAT"
Отправлено Sampan , 19-Фев-06 23:05 
>два сетевых интерфейса
> eth0 10.0.0.0 netmask 255.255.255.0 (локальная сеть)
> eth1 192.168.190.2 netmask 255.255.255.0 (выход на провайдера)

>Между сетью и провайдером нужно создать NAT

Зачем?!! Очевидно, что у провайдера уже есть собственный NAT.
Делай внутреннюю сеть 192.168.190.0/24 (за вычетом 1, 2, 3).

Что-бы маршрутизация работала при одной сети и маске на двух интерфейсах включи proxy_arp на обоих.

eth0 192.168.190.4 netmask 255.255.255.0 (локальная сеть)
eth1 192.168.190.2 netmask 255.255.255.0 (выход на провайдера)

Удалить все маршруты (за исключением lo), которые автоматически создаются скриптами инициализации сети и прописать собственные маршруты:

192.168.190.1/32 via eth1
192.168.190.3/32 via eth1
192.168.190.0/24 via eth0
default gw 192.168.190.1 via eth1

На хостах внутри - default gw 192.168.190.4

Для защиты от провайдера и реализации сетевой безопасности фильтруй что надо на проходе:
Chain FORWARD (policy DROP)
FORWARD -i eth0 -o eth1 .....
FORWARD -i eth1 -o eth0 .....


"iptables NAT"
Отправлено Sampan , 19-Фев-06 23:12 
Сорри, опечатался.

Вместо
На хостах внутри - default gw 192.168.190.4

Нужно
На хостах внутри - default gw 192.168.190.1


"iptables NAT"
Отправлено deimos.vik , 20-Фев-06 07:58 
Спасибо за совет, но мне нужен именно тот вариант что я описал.
У нас просто сеть не обна, а городская... Все мы сидим в сети 10.0.255.255/255.255.0.0
А эта сеть эо наш старый провайдер, на котором еще сидят люди...
Не могуя я их перевести туда, т.к. этот сервер еще и выступает DNS, DHCP, CS1.6, для всей сети 10.

Может быть кто-то натом подскажет как пользоватся?
Спасибо


"iptables NAT"
Отправлено djons , 20-Фев-06 12:55 
>Спасибо за совет, но мне нужен именно тот вариант что я описал.
>
>У нас просто сеть не обна, а городская... Все мы сидим в
>сети 10.0.255.255/255.255.0.0
>А эта сеть эо наш старый провайдер, на котором еще сидят люди...
>
>Не могуя я их перевести туда, т.к. этот сервер еще и выступает
>DNS, DHCP, CS1.6, для всей сети 10.
>
>Может быть кто-то натом подскажет как пользоватся?
>Спасибо

Всем привет !!
Нужна помощь в решении одной проблемки:
У меня компютерный клуб на 20 машин.Выход в интернет через маршрутизатор Slackware 10.0 Соединение через ppp0 интерфейс, пытаюсь запустить одну игруху, может кто слышал LineAge2, ну спрос у игроков появился.. А вот сама суть проблемы:Сама линейка работает через порты 7777 и 2106 об этом я на форуме прочитал, но когда стоит форвардинг открывать порты я так понял не обязательно. Заходит игруха на сервер без проблем, а вот потом после того как залогинишся начинается самое вкусное, неизвестно почему дальше заставки (ЗАКРУЗКА) идти не хочет, такое ощущени что пакеты кудато пропадают, писал об этом и на форуме ихнего сервера, но там я так понял НУБЫ, все руками розводят говорят мол клиент у тя голимый, а что самое интересно что играл я этим клиентом нормально без проблем только через мобильный интерет (GPRS), заходит, играет без проблем !!!Смотрел iptraf-ом соединение ка-бы есть но потом пропадает.Подскажите как решить эту проблему !!!!можна даже по ICQ 197466089 очень надо !!!

Ссылка на форум где я описывал проблему !!
http://linuxforum.ru/index.php?showtopic=16722


"iptables NAT"
Отправлено deimos.vik , 26-Фев-06 15:56 
Спасибо всем кто откликнулся... Проблему решил...
Все оказалось проще чем я думал...
iptables и iproute2
это все таки могучая сила... :)

"iptables NAT"
Отправлено Antares , 26-Июл-06 13:56 
>Спасибо всем кто откликнулся... Проблему решил...

Решил, а с товарищами не поделился.  :)

>Все оказалось проще чем я думал...
>iptables и iproute2
>это все таки могучая сила... :)

Можно несколько поподробнее?  :)