Привет
Вылез интересный вопрос
Имею конфиг на обычном сервере(не роутере) с 1 сетевой
#транспортная сеть /30
ifconfig_em0="inet 192.168.1.2 <http://192.168.1.2> netmask
255.255.255.252 <http://255.255.255.252>"
#живой ИП, на котором всё должно работать и с которого должен
уходить трафик
ifconfig_em0_alias0="inet 1.1.1.1 <http://1.1.1.1> netmask
255.255.255.0 <http://255.255.255.0>"
#ещё живой ИП, на котором всё должно работать
ifconfig_em0_alias1="inet 1.1.1.2 <http://1.1.1.2> netmask
255.255.255.0 <http://255.255.255.0>"
defaultrouter=" 192.168.1.1 <http://192.168.1.1>"
Со входящими коннектами всё понятно - на какой ИП придут, с того и
уйдут. Как сказать FreeBSD при исходящих коннектах посылать в шлюз
пакеты с src addr не 192.168.1.2 <http://192.168.1.2>, а 1.1.1.1
<http://1.1.1.1>?
кстати, а на какой адрес уходят пакеты? на 192.168.1.ХХХ или 1.1.1.ХХХ ?
т.е. зачем такой изврат понадобилсо?
Пакеты роутятся в мир. 1.1.1.1 это реальный ИП - короче писать чем
xxx.xxx.xxx.xxx, а 192.168.1.x - транспортная сеть на серых ИП, через
которую и идёт трафик.
На Linux я это могу сделать через что-то вроде
ip route replace default via 192.168.1.1 <http://192.168.1.1> dev
eth0 src 1.1.1.1 <http://1.1.1.1>
т.е. выставить src addr для пакетов, уходящих по этому маршруту
На крайний случай можно НАТить, но это обязательно перебор ядра на
FreeBSD, что может быть неудобно, да и не очень красивое решение.
FreeBSD 6.2 i386