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

Исходное сообщение
"Nat и  Alias сетевой карты"

Отправлено valpo , 03-Авг-07 10:10 
Поправьте меня, если я не прав.

Если на сетевой карте на сервере прописаны алиасы, то Nat не может осуществлять трансляцию адресов из сетевого пространства алиасов. Только из сетевого пространства основного адреса.
Это исправляется использованием ещё одной сетевой.

Так ли это?


Содержание

Сообщения в этом обсуждении
"Nat и  Alias сетевой карты"
Отправлено A Clockwork Orange , 03-Авг-07 10:13 
>Поправьте меня, если я не прав.
>
>Если на сетевой карте на сервере прописаны алиасы, то Nat не может
>осуществлять трансляцию адресов из сетевого пространства алиасов. Только из сетевого пространства
>основного адреса.
>Это исправляется использованием ещё одной сетевой.
>
>Так ли это?

откуда такие выводы?


"Nat и  Alias сетевой карты"
Отправлено grimnir , 03-Авг-07 12:08 
>Поправьте меня, если я не прав.
>
>Если на сетевой карте на сервере прописаны алиасы, то Nat не может
>осуществлять трансляцию адресов из сетевого пространства алиасов. Только из сетевого пространства
>основного адреса.
>Это исправляется использованием ещё одной сетевой.
>
>Так ли это?

Нет, не так.



"Nat и  Alias сетевой карты"
Отправлено valpo , 03-Авг-07 13:10 
Да на форуме тут почитал. Вроде случаи похожие. Похоже выводы неправильные сделал.

Тогда подскажите, где я неправильно настроил.
>ifconfig

fxp0:
inet xxx.xxx.xxx.1/24
inet yyy.yyy.yyy.1/24 alias
fxp1:
inet zzz.zzz.zzz.41/255.255.255.252

>natd -f /etc/natd.conf

natd.conf:
alias_address zzz.zzz.zzz.41
port 8868

firewall.conf
add 10 divert 8868 all from any to any via fxp1
add 1050 allow all from xxx.xxx.xxx.17 to any via any
add 1051 allow all from any to xxx.xxx.xxx.17 via any
add 1052 allow all from yyy.yyy.yyy.0/24 to any via any
add 1053 allow all from any to yyy.yyy.yyy.0/24 via any
add 65534 deny log ip from any to any

Так вот:
fxp0            -   сетевая смотрит во внутреннюю сеть
fxp1            -   сетевая смотрит в инет
xxx.xxx.xxx.1   -   IP сервера для 1-й локальной подсетки
xxx.xxx.xxx.17  -   IP моего компа
ууу.ууу.ууу.1   -   IP сервера для 2-й локальной подсетки (алиас)
ууу.ууу.ууу.10  -   IP компа из 2-й локальной подсетки
zzz.zzz.zzz.41  -   IP реальный инетовский

В результате я со своего компа xxx.xxx.xxx.17 могу ходить в инет куда угодно: ping и веб работает. А вот этот комп ууу.ууу.ууу.10 ничего подобного сделать не может. По логам фаервола - фаервол никакие пакеты не блокирует.

Может подскажите, что не так?


"Nat и  Alias сетевой карты"
Отправлено kam , 06-Авг-07 06:52 
>[оверквотинг удален]
>(алиас)
>ууу.ууу.ууу.10  -   IP компа из 2-й локальной подсетки
>zzz.zzz.zzz.41  -   IP реальный инетовский
>
>В результате я со своего компа xxx.xxx.xxx.17 могу ходить в инет куда
>угодно: ping и веб работает. А вот этот комп ууу.ууу.ууу.10 ничего
>подобного сделать не может. По логам фаервола - фаервол никакие пакеты
>не блокирует.
>
>Может подскажите, что не так?

Я делал подобную конфигурацию.
Рассказываю идею.
Нужно запускать несколько копий natd из rc.local. Количество копий natd равно количеству IP-адресов на внешнем интерфейсе. Для каждого natd пишешь свой конфиг, в котором будет свой параметр alias_address и port. Затем в firewall.conf заворачиваешь пакеты из нужной внутренней сети в нужный divert порт. И всё.


"Nat и  Alias сетевой карты"
Отправлено valpo , 06-Авг-07 12:11 
>[оверквотинг удален]
>>
>>Может подскажите, что не так?
>
>Я делал подобную конфигурацию.
>Рассказываю идею.
>Нужно запускать несколько копий natd из rc.local. Количество копий natd равно количеству
>IP-адресов на внешнем интерфейсе. Для каждого natd пишешь свой конфиг, в
>котором будет свой параметр alias_address и port. Затем в firewall.conf заворачиваешь
>пакеты из нужной внутренней сети в нужный divert порт. И всё.
>

ОК. Спасибо. Попробую :)


"Nat и  Alias сетевой карты"
Отправлено grimnir , 06-Авг-07 12:54 

>Я делал подобную конфигурацию.
>Рассказываю идею.
>Нужно запускать несколько копий natd из rc.local. Количество копий natd равно количеству
>IP-адресов на внешнем интерфейсе. Для каждого natd пишешь свой конфиг, в
>котором будет свой параметр alias_address и port. Затем в firewall.conf заворачиваешь
>пакеты из нужной внутренней сети в нужный divert порт. И всё.
>

Я тоже недавно столкнулся с ситуацией, когда пришлось бы запускать несколько копий natd. Мне это показалось не очень прямым решением, и я решил использовать ng_nat. Правда, пришлось сделать к нему патч, но на данный момент он работает, как мне было нужно.


"Nat и  Alias сетевой карты"
Отправлено valpo , 07-Авг-07 19:24 
>Я делал подобную конфигурацию.
>Рассказываю идею.
>Нужно запускать несколько копий natd из rc.local. Количество копий natd равно количеству
>IP-адресов на внешнем интерфейсе. Для каждого natd пишешь свой конфиг, в
>котором будет свой параметр alias_address и port. Затем в firewall.conf заворачиваешь
>пакеты из нужной внутренней сети в нужный divert порт. И всё.
>

У меня похоже немного другая ситуация. У меня на внешнем интерфейсе только 1 ИП. И на этот 1 ИП я хочу натить трафик с 2-х внутренних подсеток. Такое возможно?


"Nat и  Alias сетевой карты"
Отправлено kam , 08-Авг-07 07:39 
>У меня похоже немного другая ситуация. У меня на внешнем интерфейсе только
>1 ИП. И на этот 1 ИП я хочу натить трафик
>с 2-х внутренних подсеток. Такое возможно?

Теперь понятно, у тебя alias на внутреннем интерфейсе.
Думаю что возможно.
Попробуй сказать твоему шлюзу что сеть yyy.yyy.yyy.yyy тоже доступна через fxp0, то есть прописать маршрут на эту сеть. man 8 route или man 5 rc.conf на предмет static_routes. Похоже твой шлюз, получив ответ из инета не знает куда дальше бросать пакет. Покажи вывод netstat -rn. И посмотри tcpdump-ом как пакеты с yyy.yyy.yyy.10 ходят.
Я вечером дома проверю и отпишусь.


"Nat и  Alias сетевой карты"
Отправлено valpo , 13-Авг-07 14:40 
Всё получилось :)

Добавил статич. маршрут (совсем забыл про их наличие) и заработало :)

#route add -net yyy.yyy.yyy.0/24 yyy.yyy.yyy.1

Всем спасибо за помощь :)