Превращаем Asus EEE PC 1005p в WIFI роутер
Развитие информационных технологий привело к тому, что некоторые устройства устаревают буквально за 2-3 года, что же говорить о выпущенных 10 лет назад. При этом большинство ноутбуков и нетбуков, работоспособны, а если поменять жесткий диск на SSD, то устройством вполне можно пользоваться для выхода в интернет или просмотра ТВ.
У меня есть нетбук Eee PC 1005p, которым я до сих пор пользуюсь, в основном для опытов, настройки оборудования и ЛВС. Даже без SSD он неплохо работает под Linux.
Недавно мне потребовался wifi-роутер для опытов, но, как назло, имеющийся приказал долго жить. Я давно уже слышал об операционной системе для роутеров OpenWRT и тут появилась хорошая возможность с ней поработать.
Вместе с тем, мне не хотелось сносить уже настроенную операционную систему с жесткого диска нетбука, но оказалось, что OpenWRT вполне можно запускать с usb-флешки.
В этой статье я опишу метод установки OpenWRT на usb-флешку. Так что при необходимости можно будет быстро превратить устройство в wifi-роутер.
Для создания образа нам потребуются несколько программ:
- Образ OpenWRT, я использовал combined-ext4.img.gz версии 19.07.0, так как только под него есть необходимые драйвера для сетевого адаптера и wifi. Скачать его можно по ссылке.
- Для работы с образами нам нужны утилиты Qemu для windows - скачать можно по ссылке.
- 7-zip для распаковки архивов - сайт.
- RUSUF для записи образа на USB-флешку - сайт.
Я пытался использовать VMware Player 14 и 15 версии, но у меня образ так и не загрузился, до конца, так что я буду описывать установку на Hyper-V.
Создадим папку c:\openwrt и скопируем в нее скачанные файлы
openwrt-19.07.3-x86-generic-combined-ext4.img.gz
qemu-w32-setup-20200814.exeИзвлекаем из дистрибутива qemu нужные файлы:
"C:\Program Files\7-Zip\7z.exe" x qemu-w32-setup-20200814.exe qemu-img.exe *.dllРаспакуем образ openwrt
"C:\Program Files\7-Zip\7z.exe" x openwrt-19.07.0-x86-generic-combined-ext4.img.gzКонвертируем образ в формат Hyper-V
qemu-img convert -f raw -O vhdx openwrt-19.07.0-x86-generic-combined-ext4.img openwrt-x86-generic-combined-ext4.vhdxСоздаем виртуальную машину в Hyper-V, обязательно первого поколения и добавляем в неё сконвертированный образ OpenWRT в качестве основного диска.
Загружаем виртуальную машину. В процессе загрузки рекомендую открыть окно виртуальной машины и подвигать мышкой и понажимать клавиши, чтобы генератор случайных чисел быстрее набрал энтропию иначе загрузка может затянуться.
Как только вы увидите надпись
Please press Enter to activate this console.![]()
Можете считать, что загрузка OpenWRT успешно завершена.
Нажимаем Enter и попадаем в консоль:
![]()
Теперь нам нужно настроить ip-адрес на устройстве, для того, чтобы установить требуемые пакеты.
Прописываем ip-адрес
ip a add 192.168.0.10/24 dev br-lanПрописываем шлюз по умолчанию
ip route add default via 192.168.0.254Проверяем доступность шлюза
ping 192.168.0.254Шлюз доступен!
Теперь мы можем перейти к настройке из более удобного putty.
Открываем адрес 192.168.0.10 в putty через ssh:
Логин: root Пароля нет:login as: root
BusyBox v1.30.1 () built-in shell (ash)
_______ ________ __
| |.-----.-----.-----.| | | |.----.| |_
| - || _ | -__| || | | || _|| _|
|_______|| __|_____|__|__||________||__| |____|
|__| W I R E L E S S F R E E D O M
-----------------------------------------------------
OpenWrt 19.07.3, r11063-85e04e9f46
-----------------------------------------------------
=== WARNING! =====================================
There is no root password defined on this device!
Use the "passwd" command to set up a new password
in order to prevent unauthorized SSH logins.
--------------------------------------------------
root@OpenWrt:~#Мы зашли на маршрутизатор по ssh.
Проверяем доступность интернета
root@OpenWrt:~# ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8): 56 data bytes
64 bytes from 8.8.8.8: seq=0 ttl=108 time=148.716 ms
64 bytes from 8.8.8.8: seq=1 ttl=108 time=148.906 ms
64 bytes from 8.8.8.8: seq=2 ttl=108 time=148.902 ms
64 bytes from 8.8.8.8: seq=3 ttl=108 time=148.798 ms
^C
--- 8.8.8.8 ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max = 148.716/148.830/148.906 msВроде всё работает, но если мы попробуем так:
root@OpenWrt:~# ping ya.ru
ping: bad address 'ya.ru'Связи нет, нужно прописать еще и DNS. А так как обновляться мы будем по http он нам обязательно понадобиться:
В консоли вводим
vi /etc/config/dhcpНажмите i
Теперь в разделе
config dnsmasqнам нужно добавить параметр
list server '8.8.8.8'Можете просто вставить из буфера в конец блока
Нажмем ESC затем введем
:w и Enterзатем
:q и EnterМы сохранили настройки
Теперь перезапустим службу
/etc/init.d/dnsmasq restartПроверяем снова
root@OpenWrt:~# ping ya.ru
PING ya.ru (87.250.250.242): 56 data bytes
64 bytes from 87.250.250.242: seq=0 ttl=52 time=134.430 ms
64 bytes from 87.250.250.242: seq=1 ttl=52 time=134.222 ms
64 bytes from 87.250.250.242: seq=2 ttl=52 time=134.293 ms
64 bytes from 87.250.250.242: seq=3 ttl=52 time=134.217 ms
^C
--- ya.ru ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max = 134.217/134.290/134.430 msПинг есть
Учтите, так как я делаю образ, не привязанный к ЛВС, все настройки сети, кроме DNS пропадут после выключения виртуальной машины, впрочем, в данным момент, сеть нам нужна только для обновления и установки пакетов.
Приступим к обновлению устройства:
root@OpenWrt:~# opkg update
Downloading http://downloads.openwrt.org/releases/19.07.3/targets/x86/generic/packages/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_core
Downloading http://downloads.openwrt.org/releases/19.07.3/targets/x86/generic/packages/Packages.sig
Signature check passed.
Downloading http://downloads.openwrt.org/releases/19.07.3/packages/i386_pentium4/base/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_base
Downloading http://downloads.openwrt.org/releases/19.07.3/packages/i386_pentium4/base/Packages.sig
Signature check passed.
Downloading http://downloads.openwrt.org/releases/19.07.3/packages/i386_pentium4/luci/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_luci
Downloading http://downloads.openwrt.org/releases/19.07.3/packages/i386_pentium4/luci/Packages.sig
Signature check passed.
Downloading http://downloads.openwrt.org/releases/19.07.3/packages/i386_pentium4/packages/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_packages
Downloading http://downloads.openwrt.org/releases/19.07.3/packages/i386_pentium4/packages/Packages.sig
Signature check passed.
Downloading http://downloads.openwrt.org/releases/19.07.3/packages/i386_pentium4/routing/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_routing
Downloading http://downloads.openwrt.org/releases/19.07.3/packages/i386_pentium4/routing/Packages.sig
Signature check passed.
Downloading http://downloads.openwrt.org/releases/19.07.3/packages/i386_pentium4/telephony/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_telephony
Downloading http://downloads.openwrt.org/releases/19.07.3/packages/i386_pentium4/telephony/Packages.sig
Signature check passed.Удалим ненужные пакеты:
opkg remove kmod-3c59x kmod-8139too kmod-e100 kmod-e1000 kmod-ne2k kmod-sis900 kmod-r8169 r8169-firmware kmod-via-rhine kmod-via-velocityУстановим нужные пакеты
Драйвера для сетевых карт
opkg install kmod-atl1 kmod-atl1c kmod-ath5k kmod-ath9kПакеты для USB И карт памяти
opkg install kmod-usb-core kmod-usb-hid kmod-usb2 kmod-usb-wdm kmod-mmc kmod-usb-storage kmod-usb-storage-extrasДополнительные пакеты
opkg install usbreset usbutils kmod-fs-ext4 kmod-fs-ntfs kmod-fs-vfat e2fsprogs fdisk ntfs-3g hostapd hostapd-utils iwinfo diffutils ip-full tcpdump mcОбратите внимание, что вы можете добавить дополнительные пакеты, например, я поставил пакет mc (Midnight Commander), править конфиги всегда удобнее из нормального редактора.
Теперь вводим
sync ; rebootПосле перезагрузки откройте окно с виртуальной машиной и введите в консоли
poweroffМашина выключится.
Скопируйте изменённый образ обратно в папку c:\openwrt – можно это сделать с заменой старого файла.
Конвертируем его обратно
qemu-img convert -f vhdx openwrt-x86-generic-combined-ext4.vhdx -O raw openwrt-x86-eeepc-combined-ext4-ready.imgЗапускаем Rufus, выбираем нашу usb-флешку.
Выбираем конвертированный образ
И жмем старт и Ок:
![]()
После того как Rufus закончит, извлекаем флешку, если её нет в списке устройств, продеться зайти в Панель управления/Администрирование/Управление компьютером/Управление дисками и отключить её тут!
Я рекомендую всегда отключать usb-флешки посредством операционной системы, во избежание потери данных.
Вставим usb-флэш диск в Eee PC.
При загрузке нажимаем F2
Выбираем в разделе Boot / Hard Disk Drives наш usb-флэш диск первым.
F10 и Enter
Ждите загрузки системы
Снова вручную настроим сеть, как было описано выше, кроме DNS, эти настройки у нас сохранились.
После настройки сети самый быстрый способ настроить OpenWRT - через веб-админку.
Открываем в браузере ip-адрес, который мы задали нашему нетбуку:
![]()
Логин root
Пароль пустой
У нас откроется страница с обзором устройства:
![]()
Как видите, WIFI адаптер определился, но выключен.
Обратите внимание: вы должны убедиться, что WIFI не отключен физически на Eee PC и что огонек со значком wifi горит.
Если нет – нажмите Fn + F2
Перейдем в меню Network\Wireless
Нажмем Enable
Затем нажмем Enable и в окне пропишем ESSID: EEEPC
![]()
Жмем Save
Жмем Save&Apply
И проверяем с сотового телефона или планшета, а может и с ПК через Wifi usb-адаптер наличие сети EEEPC.
А в окне браузера появиться ваше устройство:
![]()
Интернета нет по простой причине – мы не прописали настройки сети в конфигурации самого устройства, давайте это сделаем:
Заходим в Network/Interfaces и прописываем настройки сети в br-lan
После этого проверяем на устройстве наличие Интернета.
Для чистоты эксперимента, отключите сотовый интернет на телефоне или планшете и откройте myip.ru
Вы должны увидеть внешний ip-адрес вашей ЛВС.
Вот и всё. Теперь, конечно, нужно установить пароль администратора, спрятать админку в VLAN и настроить межсетевой экран. Материалов по настройке OpenWRT, на просторах сети Интернет, очень много, так что подробно останавливаться не вижу смысла.
В следующей статье мы будем использовать OpenWRT как точку доступа, подключенную к ESR-200 и рассмотрим конфигурацию предоставления доступа к интернету ЛВС и через WIFI через VLAN.
Заключение
Сегодня мы рассмотрели установку OpenWRT на usb-флешку.
Сконвертировали образ OpenWRT в формат Hyper-V и создали виртуальную машину.
Настроили сеть на виртуальной машине и обновили её.
Установили необходимые пакеты в OpenWRT.
Сконвертировали образ обратно в формат img
Записали его на usb-флешку с помощью Rufus.
Настроили нетбук для загрузки с usb-флешки.
Настроили сеть и wifi в OpenWRT.
Проверили наличие доступа в интернет через wifi.
При подготовке статьи использовались материалы форума OpenWRT.
Комментарии
Спасибо за инструкцию. Всё получилось на eeePC900A.
Отмечу, что для сохранения настроек ip, можно отредактировать /etc/rc.local, добавив туда строки
ip a add 192.168.0.10/24 dev br-lan
ip route add default via 192.168.0.1
Добавить комментарий