Есть сервер под управлением FreeBSD 7.2.
2 провайдера
1 провайдер дает Интернет по трафику и 1 внешний IP
2 провайдер дает безлимитный Интернет и пока 16 внешних IP (в дальнейшем больше)
Следовательно возник вопрос как сделать эти 16 внешних IP, что бы можно было раскидать эти адреса по пулам.
Данные
em0 – один провайдер с ip em0_1 шлюз em0_g
em1 – второй провайдер с ip с em1_1 до em1_17 шлюз em1_g
em3 – интерфейс смотрящий на зверей с ip em2_1
Lpul1 – пул лимитного провайдера
Примечание на Lpul1 я отдаю 64 тысячи адресов (/16)
Upul1 – Upul17 – пулы второго провайдера
Примечание на Upul* я отдаю по 256 адресов (/24)
Ход моего решения
Код: Выделить всё
isp1_if = "em0"
isp2_if = "em1"
isp3_if = "em1"
isp4_if = "em1"
isp5_if = "em1"
isp6_if = "em1"
isp7_if = "em1"
isp8_if = "em1"
isp9_if = "em1"
isp10_if = "em1"
isp11_if = "em1"
isp12_if = "em1"
isp13_if = "em1"
isp14_if = "em1"
isp15_if = "em1"
isp16_if = "em1"
isp17_if = "em1"
isp18_if = "em1"
isp1_gw = "em0_g"
isp2_gw = "em1_g "
isp3_gw = "em1_g "
isp4_gw = "em1_g "
isp5_gw = "em1_g "
isp6_gw = "em1_g "
isp7_gw = "em1_g "
isp8_gw = "em1_g "
isp9_gw = "em1_g "
isp10_gw = "em1_g "
isp11_gw = "em1_g "
isp12_gw = "em1_g "
isp13_gw = "em1_g "
isp14_gw = "em1_g "
isp15_gw = "em1_g "
isp16_gw = "em1_g "
isp17_gw = "em1_g "
isp18_gw = "em1_g "
table <NAT_1> { Lpul1 }
table <NAT_2> { Upul1 }
table <NAT_3> { Upul2 }
table <NAT_4> { Upul3 }
table <NAT_5> { Upul4 }
table <NAT_6> { Upul5 }
table <NAT_7> { Upul6 }
table <NAT_8> { Upul7 }
table <NAT_9> { Upul8 }
table <NAT_10> { Upul9 }
table <NAT_11> { Upul10 }
table <NAT_12> { Upul11 }
table <NAT_13> { Upul12 }
table <NAT_14> { Upul13 }
table <NAT_15> { Upul14 }
table <NAT_16> { Upul15 }
table <NAT_17> { Upul16 }
table <NAT_18> { Upul17 }
set limit { states 100000, frags 5000 }
scrub in all
nat on $isp1_if from <NAT_1> to any -> em0_1
nat on $isp2_if from <NAT_2> to any -> em1_1
nat on $isp3_if from <NAT_3> to any -> em1_2
nat on $isp4_if from <NAT_4> to any -> em1_3
nat on $isp5_if from <NAT_5> to any -> em1_4
nat on $isp6_if from <NAT_6> to any -> em1_5
nat on $isp7_if from <NAT_7> to any -> em1_6
nat on $isp8_if from <NAT_8> to any -> em1_7
nat on $isp9_if from <NAT_9> to any -> em1_8
nat on $isp10_if from <NAT_10> to any -> em1_9
nat on $isp11_if from <NAT_11> to any -> em1_10
nat on $isp12_if from <NAT_12> to any -> em1_11
nat on $isp13_if from <NAT_13> to any -> em1_12
nat on $isp14_if from <NAT_14> to any -> em1_13
nat on $isp15_if from <NAT_15> to any -> em1_14
nat on $isp16_if from <NAT_16> to any -> em1_15
nat on $isp17_if from <NAT_17> to any -> em1_16
nat on $isp18_if from <NAT_18> to any -> em1_17
pass quick on lo0 all
Буду я иметь успех в этом, или буду иметь кислую физиономию ?