Я установил OpenWRT (ATTITUDE ADJUSTMENT (Bleeding Edge, r33556)) на моем маршрутизаторе TP-Link Wifi (TL-WR1043ND), и после получения sshd и некоторых основных вещей, которые он запускал, он сидел на моем столе в течение пары недель, и теперь я продолжил его устанавливать.

Я установил luci с uhttpd который довольно прост с opkg и попытался получить к нему доступ через браузер. Тем не менее, каждый раз, когда я запускаю сервер и пытаюсь открыть index.html , кажется, что сервер молча падает, и я понятия не имею, почему.

контекст

В целях установки мой ноутбук (временно 192.168.0.1) действует как сам маршрутизатор (который работает превосходно). Я назначил маршрутизатору (pinky) IP-адрес локальной сети 192.168.0.2 и отключил интерфейс WAN. Итак, моя конфигурация сети выглядит следующим образом:

# cat /etc/config/network
config interface 'loopback'
        option ifname 'lo'
        option proto 'static'
        option ipaddr '127.0.0.1'
        option netmask '255.0.0.0'

config interface 'lan'
        option ifname 'eth0.1'
        option proto 'static'
        option ipaddr '192.168.0.2'
        option netmask '255.255.255.0'
        option gateway '192.168.0.1'
        option dns '134.130.4.1 134.130.5.1'

config interface 'wan'
        option ifname 'eth0.2'
        option proto 'none'

config switch
        option name 'rtl8366rb'
        option reset '1'
        option enable_vlan '1'

config switch_vlan
        option device 'rtl8366rb'
        option vlan '1'
        option ports '1 2 3 4 5t'

config switch_vlan
        option device 'rtl8366rb'
        option vlan '2'
        option ports '0 5t'

Указанный DNS относится к серверам в моей локальной сети (если быть точным, к сети, к которой ведет мой VPN-туннель). В любом случае, эта конфигурация, очевидно, временная, пока я не буду уверен, что подключу маршрутизатор к интернету.

Я пробовал несколько конфигураций для uhttpd, но все они ведут к одному и тому же поведению. Сначала я запустил сервер без поддержки SSL, а затем установил luci-ssl надеясь, что это может решить проблему. Теперь я вернул конфиг до абсолютного минимума:

# cat /etc/config/uhttpd
config 'uhttpd' 'main'
        option 'listen_http' '0.0.0.0:80'
        option 'home'        '/www'

проблема

Когда я запускаю сервер, он, кажется, хорошо загружается:

 2183 root      1132 S    /usr/sbin/uhttpd -f -h /www -r pinky -n 3 -p 0.0.0.0 80

Однако, как только я открываю http://192.168.0.2 или http://192.168.0.2/index.html (то есть с моего ноутбука), процесс просто исчезает (то есть падает). И если я запускаю сервер вручную, он говорит мне:

# /usr/sbin/uhttpd -f -h /www -r pinky -n 3 -p 0.0.0.0 80
getaddrinfo(): Servname not supported for ai_socktype
Error: No sockets bound, unable to continue

И я понятия не имею, что это должно сказать мне.

Как я могу сузить проблему и исправить ее?

Версии

luci имеет версию svn-r9819-1 а uhttpd - версию 2013-05-16-7a6811b705d6cca54b1367459fa19bb6d1234c45 .

1 ответ1

0

Теперь я переключил http-сервер, обслуживающий luci с uhttpd на lighttpd установив только пакеты:

opkg install lighttpd lighttpd-mod-cgi luci-mod-admin-full luci-theme-openwrt libiwinfo

И это хорошо работает. Хотя lighttpd в четыре раза больше, чем uhttpd , я могу сэкономить место и собрать первый, чтобы он был более надежным и в любом случае проверенным (и более настраиваемым).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .