Настройка D-Link DIR-320 под FreeBSD
13
Наконец-то дошли руки настроить дома Wi-Fi сеть, а за одно вспомнить про существование таких утилит, как ifconfig, route и netstat. Тупею, надо отметить. Верно отметил один мой знакомый, что сетями (unix’ами/ассемблером – нужное подчеркнуть) необходимо заниматься постоянно, иначе все забывается. Внимание – под катом много картинок.
Как не трудно догадаться из заголовка, строилась сеть с помощью маршрутизатора D-Link DIR-320. Возможности этого девайса, надо отметить, впечатляют. Но обо всем по порядку.
Шаг 1. Настройка подключения роутер-провайдер
В одной коробке с DIR-320 я нашел кусок обжатой витой пары, CD и инструкцию из трех страниц, содержание которой сводилось к «вставьте диск в привод и следуйте инструкциям». Не очень приятное начало, если вспомнить, под какой ОС я работаю.
Кстати, как выяснилось, у меня в файловой системе нет даже точки монтирования для CD – ни разу за год использования компьютера не понадобилась. Вымирают диски, что не говори. Ну ладно, поехали ©.
# chown afiskon:afiskon /mnt/cdrom
# mount -t cd9660 /dev/acd0 /mnt/cdrom
# su afiskon
$ cd /mnt/cdrom
$ ls
Adobe/ autorun.inf* manual/
DIR-320.exe* autorun.mbd* setup/
$ wine ./DIR-320.exe
К моему великому удивлению, оно даже запустилось. Но дальше шага «включите роутер в сеть электропитания, соедините его витой парой с компьютером и нажмите Далее» программа не продвинулась. Тем не менее, я начал подозревать, что знаю, чего она хотела, потому сделал следующее:
DHCPREQUEST on rl0 to 255.255.255.255 port 67
DHCPNAK from 192.168.0.1
DHCPDISCOVER on rl0 to 255.255.255.255 port 67 interval 6
DHCPOFFER from 192.168.0.1
DHCPREQUEST on rl0 to 255.255.255.255 port 67
DHCPACK from 192.168.0.1
bound to 192.168.0.100 -- renewal in 302400 seconds.
# nmap 192.168.0.1
Starting Nmap 4.85BETA7 ( http://nmap.org ) at 2010-01-22 20:14 MSK
Interesting ports on dir-320 (192.168.0.1):
Not shown: 994 closed ports
PORT STATE SERVICE
23/tcp open telnet
53/tcp open domain
80/tcp open http
515/tcp open printer
9100/tcp open jetdirect
49152/tcp open unknown
Nmap done: 1 IP address (1 host up) scanned in 1.86 seconds
Ну неужели трудно написать в инструкции, что роутер представляет собой DHCP-сервер, к тому же имеющий веб-интерфейс? Дальше я зашел на http://192.168.0.1/, не долго думая ввел имя пользователя «admin» и пустой пароль. Дальше – смена логина-пароля и настройка LAN – все довольно просто.

Кстати, кнопка Clone MAC Address – это действительно круто. Мой провайдер ограничивает доступ в интернет по физическому адресу. Последние штрихи:
# route add default 192.168.0.1
… и можно сидеть в интернете, используя D-Link DIR-320, как ethernet-маршрутизатор. Для неопытных пользователей поясняю: тут мы удалили алиас, назначенный провайдером по DHCP и прописали маршрут по умолчанию. Теперь все пакеты идут через роутер, а от него – провайдеру.
Шаг 2. Настройка Wi-Fi
Настройка Wi-Fi делается также через веб-интерфейс. В настройках я поставил галочку «Enable WPA2 Only Wireless Security», «Chipher Type» присвоил значение «AES» (ибо стандарт) и вписал Network Key. На ноутбуке нажал волшебную кнопочку «включить wireless nic», подгрузил нужные модули ядра:
Id Refs Address Size Name
...
9 6 0xcaa00000 3a000 wlan.ko
10 1 0xc69bf000 2000 wlan_amrr.ko
11 1 0xca961000 9000 wlan_ccmp.ko
12 1 0xc69f8000 2000 wlan_scan_ap.ko
13 1 0xca89c000 7000 wlan_scan_sta.ko
14 1 0xca866000 5000 wlan_tkip.ko
Дальше – стандартная настройка Wi-Fi, уже многократно описанная в мануалах. Так что здесь пояснений не будет – просто лог:
SSID BSSID CHAN RATE S:N INT CAPS
Beeline_WiFi 00:19:e1:01:8a:51 1 54M -95:-96 100 ES WME
dlink 00:26:5a:a5:57:ed 6 54M -63:-96 100 EP RSN WPS
# ee /etc/wpa_supplicant.conf
network={
ssid="dlink"
# протокол - WPA2
proto=RSN
# используем preshared keys
key_mgmt=WPA-PSK
# алгоритм шифрования - AES
pairwise=CCMP
group=CCMP
# ключ
psk="fakepassword"
}
# ifconfig ath0 ssid dlink
# /etc/rc.d/wpa_supplicant start ath0
Starting wpa_supplicant.
# ifconfig rl0 delete 192.168.0.100
# dhclient ath0
Проверяем таблицу маршрутизации, она должна выглядеть следующим образом:
Routing tables
Internet:
Destination Gateway Flags Refs Use Netif Expire
default 192.168.0.1 UGS 0 100232 ath0
127.0.0.1 127.0.0.1 UH 0 2159 lo0
192.168.0.0/24 link#4 UC 0 0 ath0
192.168.0.1 00:26:5a:a5:57:ed UHLW 2 0 ath0 1197
Если отличается, правим ее с помощью утилиты route. Также следует убедиться, что из компьютера выдернута витая пара, а ethernet nic не присвоено адресов, принадлежащих сети 192.168.0.0/24. Если это вдруг не так, повторяем последние два шага «мануального лога», приведенного выше.
Шаг 3. Настройка принтера
Да, D-Link DIR-320 может раздавать доступ к usb-принтеру по сети. У меня дома HP Deskjet 5743. Если настраивать DIR-320 для работы с принтером через веб-интерфейс, он самостоятельно распознает его и даже предложит скачать и запустить Printer_Config.exe для того, чтобы настроить пользовательскую станцию.
Екзешники у нас не работают, так что придется поковыряться в настройках CUPS. Из результатов сканирования nmap’ом известно, что у маршрутизатора открыт порт 515, притом напротив него написано «printer». Я, честно говоря, понятия не имею, что это за порт 515, но зато мудрый Google уверен, что это протокол Line Printer Daemonprint (LPD). CUPS при этом как-бы намекает, что он прекрасно знает, о чем идет речь:

Название очереди любезно назвал мне сам роутер:

Подключить сетевой принтер под Windows также не сложно. Как это сделать – по шагам расписано в мануале от D-Link.
Напоследок
Ну вот, собственно и все. В целом я остался в высшей мере доволен сабжевым устройством. Эксперимента ради я расположил его в о одном углу квартиры, а сам ушел с телефоном в другой угол – на кухню. Nokia сказал, что качество связи «одна полосочка из трех», но страницы загружал с той же скоростью, что и при трех полосочках. Все, что умеет работать с Wi-Fi у меня дома, без проблем заходит в интернет через D-Link DIR-320, за исключением старенького ноутбука LG LM50. Ему уже больше пяти лет и он ничего не знает о WPA2. (Update: но как показала практика, с Ubuntu у старого железа начинается новая жизнь… )

Чуть не забыл, обещанное в начале поста описание роутера D-Link DIR-320:
- 4 Ethernet порта + один WAN
- Поддержка WEP/WPA/WPA2
- Встроенный принт-сервер
- Поддержка VPN
- Режим моста
- Мощные функции сетевого экрана (Port Forwarding, фильтрация URL, доступ по MAC)
- Очень хороший веб-интерфейс
- Не требует покупки проприетарного ПО!
Теперь осталось только найти, к какой стенке прикрутить маршрутизатор, а то любое его перемещение вызывает моментальное падение Wi-Fi сети и, следовательно, необходимости переподключаться.
Кстати, я процентов на 80 уверен, что D-Link DIR-100 и D-Link DIR-120 настраиваются абсолютно аналогично.

Еще можно его прошить альтернативной прошивкой, тем самым превратив в полноценную Linux машину))))))
Еще ходят слухи, что есть прошивка для Yota. Кстати, а ссылочку на linux-прошивку можно?
а еще на него можно линуксячую прошивку «от олега» поставить и научить железяку качать торренты, обновления к нод32, хостить страничку и заниматься прочими мелочами. перепрошивкой сей девайс убить фактически невозможно
В этом случае, я так подозреваю, это не последний пост о DIR-320. Меня уже так и подмывает реализовать план: Прошивка «от олега» –> Загрузочная флешка с FreeBSD –> jail –> хостинг –> …
всякие модемные и адаптерные прошивки есть официально у dlink.ua
на девайс стваится без проблем dd-wrt причем любая (мега если есть флэшка) – понравилась возможностью «разгона» передатчика со штатных 70мВт аж до 200..220 без перегрева, но не разобрался с роутингом и «ниасилил» два одновременных впн + локалку => снёс. дд-врт больше «заточена» под корпоративные нужды, в ней же и линки агрегировать можно и бгп с гре, дома нафик не надо.
«от олега» + скрипт для автоустановки «джентельменского набора» есть тут http://wl500g.info/showthread.php?t=21889 там же читать и остальные темы по тюнингу этого добра. обственно «от олега» стоит сейчас, качает базы для нода. из недостатков – не всегда успешно обновляет динднс (хотя в логах всё чисто) и иногда произвольно «зависает-отвисает» лайтххтпд со всеми веб-мордами – грешу на слабость железки, но в общем более интересный вариант для «домашнего медиа».
Большое спасибо за такой подробный ответ.
[...] This post was mentioned on Twitter by Александр, Александр and Александр, Александр. Александр said: Настройка D-Link DIR-320 под FreeBSD http://tinyurl.com/y8p55f3 [...]
Настройка D-Link DIR-320 под FreeBSD | Записки программиста…
Thank you for submitting this cool story – Trackback from progg.ru…
какое-то сборище очевидных вещей, да еще от человека, не удосужившегося прочитать прилагаемую на cd-диске документацию к железке.
А как сделать так, чтобы роутер подключался сам к VPN и вещал этот интернет?
Насколько мне известно, через тот же веб-интерфейс. У меня такой задачи, с настройкой VPN, не возникало.
еще есть OpenWrt, пожалуй самая продвинутая «full-linux» прошивка
А кто знает как с производительностью у этой железяки?
У кого был, какой максимум кило пакетов на интерфейсах WAN/LAN.