Професионален Блог

Поредният WordPress блог – що пък не? :P

Load Balance между две интернет мрежи използвайки pfSense

Интро:
pfSense е FreeBSD базирана операционна система, която е насочена към мрежовата администрация – firewall, routing, monitoring, nat и т.н.
В тази статия ще обясня стъпка по стъпка как да инсталирате и настроите pfSense така, че да имате Load Balance между два интернет доставчика за вашата вътрешна мрежа.

Имайте в предвид, че за целта ще ни трябва машина с поне 3 мрежови контролера.

Инсалация на pfSense
Можете да свалите pfSense от основния адрес на проекта – Download , след което го запишете на диск и „бутнете“ машината на която ще го инсталирате от него.

Ще видите следния екран от който трябва да изберете „1“:

След като зареди ще ви пита дали искате да настроите „VLANs“.  Изберете „n“:

Както виждате от горната картинка, разполагам с три мрежови интерфейса със следното разпределение:

em0 – за вътрешната мрежа
em1 – интернет от единия доставчик
em2 – интернет от другия доставчик

След горната стъшка инсталатора последователно ще ви попита да зададете LAN интерфейс:

“Enter your LAN interface name”, – където задавам em0
“Enter your WAN interface name”, – където задавам em1
“Enter the Optional 1 interface name”, – където задавам em2

След като зададем горните настройки натиснете „enter“ за да приключим с интерфейсите.
Следва върпрос за това дали желаете да се приемат настройките, на който трябва да отговорите с „y“:

с което текущите настройки приключиха.

Следва да бъде извършена инсталацията върхи хард диска на машината. За целта е необходимо да изберете опция „99“:

От тук стъпките са както следва ( имайте в предвид, че следвайки тези стъпки  ще изтриете цялата информация на диска ):

1. < Accept these Settings >

2. < Quick/Easy Install >

3.  В зависимост от това дали имате един или повече процесора избирате между опция 1 и 2 от следния прозорец:

4. Рестартирайте, като се уверете, че машината „бутва“ от хард диска вече.

Ако сте настроили всичко коректно и инсталацията е минала успешно би трябвало да видите нещо подобно на следното:

Настройка на pfSense:

Настройките се извършват изцяло през web базиран интерфейс, който можете да достъпите през LAN интерфейса на IP отговарящ за вашия LAN адрес.

В моя случай това е http://192.168.1.210 като предварително промени IP адреса от конзолните настройки – опция „2“.

Web интерфейса първоначално се достъпва с следните потребител и парола:
Потребите: admin
Парола: pfsense

С първото си влизане е необходимо да минете през тъй наречения „Wizard“ с който да зададете Hostname, DNS сървъри ( Важно е за DNS1 да изберете такъв от WAN1, а за DNS2 – от WAN2 ), чесова зона, настроите WAN и LAN интерфейса и да смените паролата за вход. Ако решите в последствие да правите промени по тези настройки, то от Web базирания интерфейс на System -> General Setup можете да го направите.

Следващата стъпка е да настроим DNS forwarder, което се прави от Services -> DNS forwerder
Трябва да изберете опциите, които са избрани и от приложената снимка:

От Interfaces -> OPT1 е необходимо да настроите втората интернет връзка ( връзката от втория интернет доставчик ). Желателно е да използвате статични IP адреси.
Ето как изглежда при мен:

Следва настройката на Load Balance правилата.
Трябва да създадем три правила:
1. Когато и двете WAN мрежи работят
2. Когато WAN1 се прекъсне, трафика да минава през WAN2
3. Когато WAN2 се прекъсне, трафика да минава през WAN1

Настройките се правят от Services -> Load Balancer и избирате бутончето „+“ за добавяне.
Примерна таблица с настройките:

Setting Pool 1 Pool 2 Pool 3
Pool name LoadBalance WAN1FailsToWAN2 WAN2FailsToWAN1
Description Round Robin load balancing WAN 2 preferred when WAN 1 fails WAN 1 preferred when WAN 2 fails
Type Gateway Gateway Gateway
Behavior Load Balancing Failover Failover
Port Unused Unused Unused
1st Monitor IP DNS server 1 DNS server 2 DNS server 1
1st Interface name WAN WAN2 WAN
2nd Monitor IP DNS server 2 DNS server 1 DNS server 2
2nd Interface name WAN 2 WAN WAN2

За даботят гореспоменатите настройки е необходимо от System -> Static Routes да създадете статични пътища за двата DNS сървъра. Също така DNS1 не трябва да бъде достъпван от WAN2 и обратното.

Препоръчително е от System -> Advanced от секцията „Load Balancing“ да изберете „Use sticky connections“.

Следва настройката на защитната стена.
Настройката се прави от Firewall -> Rules.
За по-удобно извеждам примерните настройки в табличен вид:

Rule Load Balance WAN 1 WAN 2
Position in rule list Last Top Top(-1)
Action Pass Pass Pass
Disabled Unchecked Unchecked Unchecked
Interface LAN LAN LAN
Protocol any any any
Source LAN subnet LAN subnet LAN subnet
Source OS any any any
Destination any network:
192.168.0.0 / 24
WAN2 subnet
Log no yes temporarily (see below) yes temporarily (see below)
Schedule none none none
Gateway LoadBalance default default
Description Everything else gets shared out Make sure WAN 1 traffic goes to right interface Make sure WAN 2 traffic goes to WAN2 interface

С това завършва това опътване. За вас остава да тествате дали превключването между мрежите работи.

, , , , ,

Вашият коментар