Маршрутизация.
- From
- Vova Uralsky (2:5030/1115.257)
- To
- Mikhail M Krivenkov
- Date
- 2006-10-06T14:48:26Z
- Area
- RU.UNIX.SOLARIS
Hi!
Mikhail M Krivenkov -> Vova Uralsky schrieb:
>> ifconfig hme0 plumb
>> ifconfig hme0 10.200.1.86 netmask 255.255.255.0 up
>> ifconfig qfe0 plumb
>> ifconfig qfe0 2.1.0.2 netmask 255.255.255.0 up
поднимаем 2 физических интерфейса в двух IP сетках, принципиально, оба интерфейса могут быть подключены к одному физическому сегменту.
>> cat /etc/defaultrouter
>> 10.200.1.100
>> 2.1.0.1
поднимаем 2 дефолта, по одному на сетку. Тут пропущено, делаем 2 зоны, одна находится в сетке 10.200.1/24, другая в 2.1.0/24. Заходим в зону, каждая из них видит только свой дефолт. Первое дело сделано, роутинг есть.
Теперь самое интересное, поскольку солярис должен распихивать пакетики по дефолтам раундробин, может получиться так, что какой-нить злой файервол не захочет их принимать, поскольку нафиг принимать в сегменте 10.200.1/24 пакеты из 2.1.0/24. Изучение вопроса показало, что робин, конечно, раунд, но неочень. Похоже, что соединения разворачиваются попеременно то через один, то через другой интерфейс, что характерно, без учета сорса. Для того, чтобы избежать этого предлагается поднять IPFilter из поставки, инструкция в коробке.
>> cat /etc/ipf/ipf.conf | egrep -v '(^#|^$)'
>> block in log all
>> block out log all
>> pass in quick on lo0 all
>> pass out quick on lo0 all
>> pass in on hme0 all
>> pass out on hme0 all
>> pass in log on qfe0 all
>> pass out log on qfe0 all
Типичное бла-бла на тему, единственное, что важно, строки про hme и qfe не должны содержать quick, иначе ничего работать не будет.
>> pass out log quick on hme0 to qfe0:2.1.0.1 from 2.1.0.0/24 to any
Если на hme0 (сетка 10.200.1.0/24) появился пакетик из 2.1.0.0/24 закинуть его через qfe0 (сетка 2.1.0.0/24) на адрес 2.1.0.1. То есть как бы симитировать дефолт роутинг. У кошек это, вроде, nexthop'ом называется...
>> pass out log quick on qfe0 to hme0:10.200.1.100 from 10.200.1.0/24 to any
Ну а тут то же самое только для другого интерфейса, ну и сетки, соответственно, другие.
Все довольно просто, если интерфейсов только два, а вот если восемь... ;-)
> А можно немного подробнее разъяснить ?
Надеюсь, что получилось.
> Я пробывал поднимать интерфейсы в основной зоне, но дочерняя их потом не
> перехватывала, по ifconfig становились 0.0.0.0
А зона никого и не должна перехватывать. Интерфейс должен быть сконфигурирован, иначе не поднять default. Зона получает alias. После подъема можно IP на интерфейсе обнулить, если не хочется, чтобы global светился в каких-то сетсях, но я бы это делал при помощи IPFilter.
Расскажи, чего и как получилось.
Vova
--- Thunderbird 1.5.0.7 (Macintosh/20060909)
* Origin: Permission denied (2:5030/1115.257)
SEEN-BY: 46/50 450/1024 5000/5000 5011/13 5012/46 5015/28 5020/400 545 715
SEEN-BY: 5020/1042 2238 4441 5021/29 5025/3 5029/60 5030/7 55 61 97 115 172
SEEN-BY: 5030/251 254 266 325 338 382 452 468 580 585 738 786 845 918 920 1014
SEEN-BY: 5030/1023 1115 1181 1340 1763 1957 5035/38 5038/9 5045/7 5054/1 4 8 9
SEEN-BY: 5054/28 35 37 5058/1 5061/26 5062/10 5064/7 5080/1003 5085/13 5095/20
SEEN-BY: 5096/18 5098/11 6083/11
PATH: 5030/1115 115 5020/545 5054/1 37