Offtopic: FreeBSD изменить outgoing address

Malik Abdugaliev malik at elcat.kg
Thu Oct 4 12:34:24 MSD 2007


On Thursday 04 October 2007 07:36, Alex Vorona wrote:
> Привет
>
> Вылез интересный вопрос
> Имею конфиг на обычном сервере(не роутере) с 1 сетевой
>
> #транспортная сеть /30
> ifconfig_em0="inet 192.168.1.2  netmask 255.255.255.252"
> #живой ИП, на котором всё должно работать и с которого должен уходить
> трафик ifconfig_em0_alias0="inet 1.1.1.1 netmask 255.255.255.0"
> #ещё живой ИП, на котором всё должно работать
> ifconfig_em0_alias1="inet 1.1.1.2 netmask 255.255.255.0"
> defaultrouter="192.168.1.1"
>
> Со входящими коннектами всё понятно - на какой ИП придут, с того и
> уйдут. Как сказать FreeBSD при исходящих коннектах посылать в шлюз
> пакеты с src addr не 192.168.1.2, а 1.1.1.1?


Я обычно делаю при помощи ipfw:
ipfw add 1 fwd 1.1.1.254 ip from 192.168.1.2 to not 192.168.1.1
- где 1.1.1.254 - дефолт гейтвей в сети 1.1.1.0/24.

Правило по-идее получается вот такое - отправлять на 1.1.1.254 весь IP с 
адреса 192.168.1.2 ко всем кроме 192.168.1.1.


> На Linux я это могу сделать через что-то вроде
> ip route replace default via 192.168.1.1 dev eth0 src 1.1.1.1
> т.е. выставить src addr для пакетов, уходящих по этому маршруту
>
> На крайний случай можно НАТить, но это обязательно перебор ядра на
> FreeBSD, что может быть неудобно, да и не очень красивое решение.
>
> FreeBSD 6.2 i386





More information about the nginx-ru mailing list