PfSense — Роутер своими руками


Домашние роутеры старше 2-х лет перестали справляться с современными тарифами предлагаемыми провайдерами. А именно режут скорость за долго до ограничений по тарифному плану. Эта статья для тех, кому поставщик интернета предоставляет трафик сравнимый со скоростью Ethernet порта, а именно 100 Мегабит в секунду. Причем с использованием ресурсоемких для домашних маршрутизаторов протоколов L2TP и PPTP.

Я все свои эксперименты проводил с провайдером Коламбия-Телеком предоставляющим услуги доступа к сати интернет в Волгограде под торговой маркой Next-one. Но подойдет и для Beeline. И для всех провайдеров, которые предоставляют доступ к интернету по протоколам L2TP или PPTP.

Зачем все это надо или 3 варианта решения проблем

Чтобы выжать все из своего провайдера есть три варианта:

  1. Подключить ethernet кабель напрямую в компьютер. Идеальный вариант, если у вас только один стационарный компьютер. Если же в доме есть планшеты, телефоны и прочая мобильность то этот вариант не для вас.
  2. Купить более мощный маршрутизатор. Я держал в руках только две модели которые в плотную подошли к 100 Мб/с на протоколе L2TP. Это ASUS RT-N56U и UPVEL UR-325BN. При этом первый долгое время был совсем не дешев, а второй не балует качеством.
  3. Собрать роутер самостоятельно из подручных средств. При наличии старого хлама абсолютно бесплатный вариант.

Самодельный домашний роутер

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

Выбор программного обеспечения для домашнего маршрутизатора

Как оказалось, не надо изобретать велосипед, все необходимое уже давно написано. Более того является абсолютно свободным и бесплатным для домашнего использования. В этой статье речь пойдет о pfSense — дистрибутиве для создания межсетевого экрана/маршрутизатора, основанного на FreeBSD. Который имеет удобный web интерфейс и позволяет произвести необходимые настройки обычному пользователю.

Подробнее на Википедии.
Pfsense поддерживает необходимый мне протокол L2TP.

Требования к железу для домашнего роутера

Я его слепил из того, что было. Материнка на Атоме Intel(R) Atom(TM) CPU 230 @ 1.60GHz + 512 мегабайт оперативной памяти. В качестве накопителя было решено использовать старую карту флеш-памяти CompactFlash на 512 МегаБайт из старого фотоаппарата. Чтобы использовать ее как жесткий диск с IDE разъемом ATA необходимо приобрести переходник.

Ну и естественно необходимо иметь две сетевые карты. Одна будет смотреть в сторону провайдера, а вторая в вашу домашнюю сеть.

Минимальные требования к аппаратному обеспечению для использования ПО PFSENSE

CPU — 100 MHz Pentium
RAM — 128 MB

Для установки на жесткий диск

CD-ROM устройство и диск для установки либо USB флешка
1 GB свободного места

Для встроенной системы

512 MB Compact Flash

Как видите требования не высоки.

Выбор Pfsense для маршрутизатора

На официальном сайте pfsense.org для скачивания представлены несколько вариантов в зависимости от архитектуры процессора и типа установки. Для встроенной системы необходимо выбирать файлы в зависимости от размера флешки. Усли у вас CF объемом 1 ГБ, то следует выбрать прошивку в названии которой присутствует 1g. Соответственно для 512 МБ — 512mb и так далее.
Так же в названии прошивки присутствует значение архитектуры, можно использовать i386 как универсальное значение. Так как команды i386 поддерживаются как процессарами Intel, так и AMD, и Cyrix (VIA).
И последний параметр — это тип консоли, VGA или последовательный порт. Я использую более привычный VGA. Название файл в моем случае для CF объемом 512 МБ выглядит так: pfSense-2.1-RELEASE-512mb-i386-nanobsd_vga.img

Как записать Compack Flash для встроенной системы Pfsense

Запись CF для встроенной системы не столь тривиальна, как может показаться, простое копирование и обычные программы для записи образов на диск не помогут.
Воспользуемся утилитой physdiskwrite и инструкцией.



Первый запуск PfSense

При первом запуске будет необходимо ответить на пару глупых вопросов. Поэтому как минимум один раз понадобятся монитор и клавиатура. Суть предварительной настройки — это указать какая сетевая карта будет смотреть в сторону провайдера, то есть будет WAN портом, а какая — в локальную сеть, то есть — LAN. Так же можно выбрать тип IP адресов на каждом интерфейсе, статика или динамика. И в случае статики присвоить конкретный адрес. К сожалению PfSense не имеет настроек по-умолчанию. Поэтому в случае полного сброса к заводским настройкам Вам придется подключать монитор и клавиатуру. PfSense просто не продолжит работу пока вы не произведете настройку этих параметров.
В дальнейшем, как только Вы произвели базовые настройки, то есть присвоили IP адреса интерфейсам все настройки можно производить из web оболочки и локальные монитор и клавиатура нам не понадобятся.

Настройка PFSENSE

Набираем в браузере адрес LAN порта компьютера, а теперь уже роутера pfsense. И вводим параметры авторизации. Значения по-умолчанию admin#pfsense

И должны увидеть примерно следующее:

Настройка WAN порта pfsense

Параметры порта WAN настраиваем в соответствии с требования вашего провайдера. В моем случае провайдер раздает по DHCP серые адреса из сети 10.0.0.0/8
Поэтому произведем соответствующие настройки

Особо обратите внимание на две галочки в самом низу. Первая блокирует весть трафик из серых сетей, то есть отданных для локальных сетей. Вторая блокирует весь трафик из неизвестных сетей, то есть из еще нераспределенных.

Для начала рекомендую убрать обе галочки. А потом когда все настроите и все заработаете, то можете поэкспериментировать.
Подключите сетевой кабель провайдера в WAN порт. Зайдите в меню Status—>Interfaces и убедитесь, что все работает:

Настройка LAN порта PfSense

LAN порт будем настраивать по своему усмотрению. Я предпочитаю использовать статический адрес (не следует путать с DHCP сервером для клиентов локальной сети).

Скорее всего в интерфейсе LAN уже все будет настроено так как надо еще с момента установки pfSense, когда мы вводили параметры в консоль. Поэтому просто проверьте значения.

Настройка L2TP Pfsense для подключения к интернету

Вот мы и подошли к самому главному. А именно к настройке L2TP тоннеля для подключения к интернету.
Однако в самом начале нам стоит прописать статический маршрут до L2TP сервера провайдера, который в моем случае имеет белый адрес и естественно недоступен из серой сети System—>Routing вкладка Routers:

После чего поверх WAN порта настроим еще одно соединение. Заходим в меню Interfaces—>assign, выбираем вкладку PPPS и жмем плюсик и настраиваем соединение в соответствии с требованиями провайдера:

Переходим на первую вкладку (Interface assignments) и нажатием на «+» добавляем новый интерфейс из созданного нами L2TP соединения. Сейчас он называется OPT1.

Переходим в меню Interfaces—>OPT1, включаем его (Enable interface).

Поля авторизации будут автоматически заполнены из созданного вами соединения.

После этого нам следует изменить шлюз по-умолчанию. Чтобы все запросы уходили в интернет необходимо сделать шлюзом по-умолчанию интерфейс OPT1. Для это заходим в его настройки System—>Routing
Выбираем редактировать WAN (default) и убираем «Default gateway»
Выбираем редактировать OPT1 (default) и ставим «Default gateway»

Вот собственно и всё, роутер в минимальной конфигурации у нас уже есть. Остается только его перезагрузить и убедиться в работоспособности.

Тестирование производительности маршрутизатора на базе pfsense

Самодельный маршрутизатор показал скорости на протоколе L2TP близкие к скорости Ethernet порта.
Было (для тарифа 100 Мбит/сек) на роутере DIR-620:

Стало (для тарифа 100 Мбит/сек) на самодельном роутере PfSense:


 Метки:  , ,

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Технический блог © 2016
SQL - 39 | 0,144 сек. | 7.66 МБ