Тайна века. FREEBSD and two default gw.

Простые/общие вопросы по UNIX системам. Спросите здесь, если вы новичок

Модераторы: vadim64, terminus

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
fessoga5
рядовой
Сообщения: 28
Зарегистрирован: 2011-11-22 20:04:00

Тайна века. FREEBSD and two default gw.

Непрочитанное сообщение fessoga5 » 2013-06-24 18:19:59

В общем дело обстоит так. В свое время мутил распределение нагрузки между двумя провайдерами. Начитался о setfib, о setfib + ipfw, все понял и все заработало. Но потом, чисто случайно сделал такую хрень ....

Код: Выделить всё

route add default x.x.x.x
route add 0.0.0.0 y.y.y.y 2

И твою мать что я увидел:

Код: Выделить всё

Internet:
Destination        Gateway            Flags    Refs      Use  Netif Expire
0.0.0.0&0x2        y.y.y.y        UGS         0        0    vr0 =>
default            x.x.x.x       UGS         0        0    vr0

И что еще удивительнее, они оба работают, каким то чудом рандомно срабатывает то первый то второй дефолт. Как же так то блеять?! Неужели раньше этого никто не замечал??? Можно хоть 8 таких маршрутов и все срабатывают??? Каким образом выбирается какой маршрут???
P.S.
Во второй таблице маршрутизации, сделал два default и запустил торрент. Работает одновременно через двух провайдеров и качает с сумарной скоростью от обоих провайдеров.

rmn
старшина
Сообщения: 426
Зарегистрирован: 2008-10-03 18:52:02

Re: Тайна века. FREEBSD and two default gw.

Непрочитанное сообщение rmn » 2013-06-24 18:42:43

если таргет находится в нескольких записях таблицы маршрутизации, выбирается та, в которой наименьшее число хостов.

Код: Выделить всё

root@vhost1:/root # ipcalc 0.0.0.0 2
Address:   0.0.0.0              00 000000.00000000.00000000.00000000
Netmask:   192.0.0.0 = 2        11 000000.00000000.00000000.00000000
Wildcard:  63.255.255.255       00 111111.11111111.11111111.11111111
=>
Network:   0.0.0.0/2            00 000000.00000000.00000000.00000000
HostMin:   0.0.0.1              00 000000.00000000.00000000.00000001
HostMax:   63.255.255.254       00 111111.11111111.11111111.11111110
Broadcast: 63.255.255.255       00 111111.11111111.11111111.11111111
Hosts/Net: 1073741822            Class A, In Part Private Internet


так что, если адрес пира (в твоем случае) попадает в диапазон 0.0.0.1 - 63.255.255.254, запрос уйдет через один шлюз, иначе - через другой.

fessoga5
рядовой
Сообщения: 28
Зарегистрирован: 2011-11-22 20:04:00

Re: Тайна века. FREEBSD and two default gw.

Непрочитанное сообщение fessoga5 » 2013-06-24 18:49:22

rmn писал(а):если таргет находится в нескольких записях таблицы маршрутизации, выбирается та, в которой наименьшее число хостов.

Код: Выделить всё

root@vhost1:/root # ipcalc 0.0.0.0 2
Address:   0.0.0.0              00 000000.00000000.00000000.00000000
Netmask:   192.0.0.0 = 2        11 000000.00000000.00000000.00000000
Wildcard:  63.255.255.255       00 111111.11111111.11111111.11111111
=>
Network:   0.0.0.0/2            00 000000.00000000.00000000.00000000
HostMin:   0.0.0.1              00 000000.00000000.00000000.00000001
HostMax:   63.255.255.254       00 111111.11111111.11111111.11111110
Broadcast: 63.255.255.255       00 111111.11111111.11111111.11111111
Hosts/Net: 1073741822            Class A, In Part Private Internet


так что, если адрес пира (в твоем случае) попадает в диапазон 0.0.0.1 - 63.255.255.254, запрос уйдет через один шлюз, иначе - через другой.

Мм. Однако проще говоря, я побил 0.0.0.0 на две подсети и внес их в таблицу маршрутизации ?

rmn
старшина
Сообщения: 426
Зарегистрирован: 2008-10-03 18:52:02

Re: Тайна века. FREEBSD and two default gw.

Непрочитанное сообщение rmn » 2013-06-24 18:53:38

fessoga5 писал(а):Мм. Однако проще говоря, я побил 0.0.0.0 на две подсети и внес их в таблицу маршрутизации ?

именно

rmn
старшина
Сообщения: 426
Зарегистрирован: 2008-10-03 18:52:02

Re: Тайна века. FREEBSD and two default gw.

Непрочитанное сообщение rmn » 2013-06-24 19:12:33

fix: ты поделил сети не по маске /2, а по маске 255.255.255.253 (она же 2, она же 0xfffffffd). Хотя это и не валидная маска, route ее почему то принимает. И через второй шлюз пакеты пойдут для тех адресов, у которых второй бит в последнем октете равен 1.

Аватара пользователя
res251
мл. сержант
Сообщения: 87
Зарегистрирован: 2012-02-26 0:03:34
Откуда: UA
Контактная информация:

Re: Тайна века. FREEBSD and two default gw.

Непрочитанное сообщение res251 » 2013-06-24 22:53:28

напишу не в тему, но у меня тоже было чудо, фря подключилась к вайфаю с неправильным логином и паролем, каким чудом )))))))))))
Hастоящий админ знает только одно оскорбление - "ты юзер".
DANGER: DESKTOP FreeBSD USER

Аватара пользователя
vadim64
майор
Сообщения: 2097
Зарегистрирован: 2009-09-17 15:15:26
Откуда: Засратовец

Re: Тайна века. FREEBSD and two default gw.

Непрочитанное сообщение vadim64 » 2013-06-27 11:40:14

ТС - опасный тип
Люди не делятся на национальности, партии, фракции и религии. Люди делятся на умных и дураков, а вот дураки делятся на национальности, партии, фракции и религии.


Вернуться в «FreeBSD/UNIX для начинающих»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя