На рынке сейчас огромное количество разнообразных маршрутизаторов (роутеров), с огромным количеством функции, но они в основном подходят для малых офисов и частных квартир и стоимость их довольна низкая. Но все кардинально меняется когда подключаешь крупные офисы, где нагрузка на роутеры довольно велика, соответственно стоимость таких устройств бьет по карману. Выходом может послужить Ваш старенький компьютер, в который можно докупить сетевые платы и wi-fi карточку и получить отличный роутер, который будет служить верой и правдой очень долгое время.

 И так в предыдущих статьях, мы настроили DNS и DHCP server, собрали новое ядро с фаерволом и мостом.

Настройка DNS

Настройка DHCP

Настройка IPFW

Настройка WiFi

Пример

re0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=8209b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_MAGIC,LINKSTATE>
ether bc:5f:f4:64:5d:b7
hwaddr bc:5f:f4:64:5d:b7
inet 10.102.15.43 netmask 0xffffff00  
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active

vr0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=82808<VLAN_MTU,WOL_UCAST,WOL_MAGIC,LINKSTATE>
ether 00:1c:f0:d1:1a:75
hwaddr 00:1c:f0:d1:1a:75
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
media: Ethernet autoselect (none)
status: no carrier

wlan0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500
ether e8:94:f6:4f:2f:7a
hwaddr e8:94:f6:4g:2f:9a
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
media: IEEE 802.11 Wireless Ethernet autoselect mode 11g <hostap>
status: no carrier

У нас три сетевых платы:

re0 — смотрит в сторону провайдера (WAN)

vr0 — локальный интерфейс

wlan0 — wifi адаптер

Настроим wifi адаптер

Если Ваш адаптер не появляется в ifconfig. Возможно он просто выключен или FreeBSD не поддерживает данный адаптер.

Ишем wifi адаптер

 pciconf -vl | grep Wireless

device = ‘AR9227 Wireless Network Adapter’

Создаем интерфейс wifii

ifconfig wlan0 create wlandev ath0

Так как мы строим шлюз с wifi, то прописываем в rc.conf

 #wifi
hostapd_enable="YES"
wlans_ath0="wlan0"
create_args_wlan0="wlanmode hostap"
ifconfig_wlan0="up ssid mywifi mode 11g channel 10 txpower 40"

Создаем файл hostapdnano /etc/hostapd.conf

nano /etc/hostapd.conf
interface=wlan0
debug=4
dump_file=/tmp/hostapd.dump
ctrl_interface=/var/run/hostapd
ctrl_interface_group=wheel
ssid=mywifi
wpa=2
wpa_passphrase=Ваш пароль
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP CCMP
macaddr_acl=0 фильтрация по mac адресам (По умолчанию выключена)

Включаем фильтрацию по mac

  macaddr_acl=1 accept_mac_file=/etc/accept_mac 

 

Настроим Мост (bridge0)

Объединяем два физических интерфейса

Прописываем

nano /etc/rc.conf
#bridge
cloned_interfaces="bridge0"
ifconfig_bridge0="inet 192.168.9.1 netmask 255.255.255.0 addm vr0 addm wlan0 up" 

На интерфейсе vr0 прописывать ничего не надо, как и на wlan0

! При настройке DHCP в rc.conf интерфейс нужно указывать  bridge0

Перезагружаем машину

reboot

После перезагрузки наблюдаем

 ifconfig

re0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=8209b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_MAGIC,LINKSTATE>
ether bc:5f:f4:64:5d:b7
hwaddr bc:5f:f4:64:5d:b7
inet 10.102.15.43 netmask 0xffffff00 
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active

vr0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=82808<VLAN_MTU,WOL_UCAST,WOL_MAGIC,LINKSTATE>
ether 00:1c:f0:d1:1a:75
hwaddr 00:1c:f0:d1:1a:75
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
media: Ethernet autoselect (none)
status: no carrier

wlan0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500
ether e8:94:f6:4f:2f:7a
hwaddr e8:94:f6:4f:2f:7a
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
media: IEEE 802.11 Wireless Ethernet autoselect mode 11g <hostap>
status: running
ssid freebsdap channel 10 (2457 MHz 11g) bssid e8:94:f6:4f:2f:7a
regdomain 32924 country CN indoor ecm authmode WPA2/802.11i
privacy MIXED deftxkey 2 TKIP 2:128-bit TKIP 3:128-bit txpower 20
scanvalid 60 protmode CTS wme burst dtimperiod 1 -dfs
groups: wlan

bridge0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
ether 02:be:20:6c:a6:00
inet 192.168.9.1 netmask 0xffffff00 broadcast 192.168.9.255
nd6 options=9<PERFORMNUD,IFDISABLED>
groups: bridge

Посмотреть клиентов подключенных можно командой

less /var/db/dhcpd/dhcpd.leases

Теперь Мы можем пользоваться своим роутером. Удачи.

Автор

alex@tehalex.ru

Похожие записи

Почтовый шлюз postfix

 В этой статье будет рассмотрен процесс установки и настройки Почтового шлюза postfix Рассмотрим настройку с системными пользователями и виртуальными пользователями (postfixadmin) и...

Читать полностью

Настройка DNS в FreeBSD

DNS (англ. Domain Name System — система доменных имён) — компьютерная распределённая система для получения информации о доменах. Чаще всего используется для...

Читать полностью

IPSEC VPN между удаленными офисами в FreeBSD 11

IPsec (сокращение от IP Security) — набор протоколов для обеспечения защиты данных, передаваемых по межсетевому протоколу IP. Позволяет осуществлять подтверждение подлинности (аутентификацию),...

Читать полностью

DHCP server в FreeBSD

Протокол динамического выделения адресов (DHCP) — это сетевой сервис, который позволяет компьютерам в сети автоматически получать настройки с сервера вместо того, чтобы...

Читать полностью

Установка и настройка proftpd в FreeBSD

Из двух более распространенных версий ftp сервером (proftpd и vsftpd), мне больше по душе proftpd! Его я и буду устанавливать! Устанавливаем из...

Читать полностью

Установка VirtualBox с Web интерфейсом

VirtualBox (Oracle VM VirtualBox) — программный продукт виртуализации для операционных систем Microsoft Windows,Linux, FreeBSD, Mac OS X, Solaris/OpenSolaris, ReactOS, DOS и других. C...

Читать полностью