Есть домашний аппаратный роутер с установленным на него OpenWRT Kamikaze. Типичная проблема: есть лишь один провод от провайдера и один WAN-порт, в который этот порт подключается. Для доступа в локальную сеть в локальную сеть провайдера требуется получить адрес по DHCP. Чтобы получить доступ наружу - нужно использовать PPPoE.
Средствами OpenWRT можно интерфейсу wan присвоить тип - dhcp *или* pppoe. Далее конфигурация интерфейса будет предобразована в формат, понятный ifupdown и интерфейс будет рулиться уже через него.
Уже не раз встречал упоминание, что в OpenWRT проблема одновременного доступа и наружу и в локалку прова легко и *правильно* решается, но до сих пор не обнаружил внятного и *аккуратного* решения для этого (понятное дело, что можно понаправить скрипты в обход гуя LuCI, захаркодить в них нужные команды, вызывающие явно pppd и udhcpc и т.д.).
Собственно интересует - как можно красиво указать OpenWRT, чтобы он:
- либо использовал сначала DHCP для назначения адреса eth0.1 (VLAN, в который входит WAN-порт, и с которым, в дальнейшем, ассоциируется wan-интерфейс) и потом вызывал pppd для поднятия ppp0, *но не сбрасывал* c eth0.1 уже присвоенный адрес (не могу до конца понять - кто это делает, ifup, или какие-то скрипты или сам pppd)
- либо поднимал ppp0, но после успешного поднятия мог выполнить скрипт, в котором будет прописан вызов udhcp для eth0.1
Ссылки приветствуются. Не могу понять - возможно, что я неправильно называю эту проблему (в русском сегменте сети её чаще называют Dual Access вроде), потому и не могу найти решение.
OpenWRT: решение для доступа в две сети
Модераторы: SLEDopit, Модераторы разделов
-
serzh-z
- Бывший модератор
- Сообщения: 8259
- Статус: Маньяк
- ОС: Arch, Fedora, Ubuntu
-
KiWi
- Бывший модератор
- Сообщения: 2521
- Статус: статус, статус, статус
Re: OpenWRT: решение для доступа в две сети
Насколько помню из копания скриптов поднятия сети -- то ли в случае pppoe, то ли в случае pptp автоматически на реальном интерфейсе идёт попытка получить настройки по DHCP(то есть статику прописать не получится, а вот в плане DHCP -- оно вполне себе Dual Access).
-
serzh-z
- Бывший модератор
- Сообщения: 8259
- Статус: Маньяк
- ОС: Arch, Fedora, Ubuntu
Re: OpenWRT: решение для доступа в две сети
Да вот не идёт. В Gentoo на десктопной версии rp-pppoe всё есть - и у ethX и у pppX, а в роутерной - нет.
Если я запихну вызов udhcp для eth0.1 в /etc/ppp/ip-up.d, то это поможет отследить запуск rp-pppoe и выставить параметры для eth0.1?
Кстати говоря, udhcp eth0.1 не срабатывает из-за того, что в /usr/share/udhcp/default.script есть проверка типа wan (который описан в /etc/config/network): обнаруживается, что тип wan есть pppoe и wan связан с ppp0 и вызов ifconfig не делается. Получается засада на засаде.
-
serzh-z
- Бывший модератор
- Сообщения: 8259
- Статус: Маньяк
- ОС: Arch, Fedora, Ubuntu
Re: OpenWRT: решение для доступа в две сети
Решил, что не стоит данная проблема больших затрат по времени и просто прописал присваивание статического IP и маршрутов в /etc/ppp/ip-up.d/. Не думаю, что пров часто меняет у себя привязку IP по MAC, если вообще её меняет. Может не красиво, но просто и работает.
Может кто-то знает - как в OpenWRT включать/отключать WiFi интерфейс? Хотелось бы его включать по расписанию, в определённые часы, как это было сделано в оригинальной прошивке от ASUS. Думаю просто засунуть команды включения/отключения в роутерный кронтаб.
Может кто-то знает - как в OpenWRT включать/отключать WiFi интерфейс? Хотелось бы его включать по расписанию, в определённые часы, как это было сделано в оригинальной прошивке от ASUS. Думаю просто засунуть команды включения/отключения в роутерный кронтаб.
-
noob
- Сообщения: 212
Re: OpenWRT: решение для доступа в две сети
Я делал проще.
В /etc/config/network на итерфейс тип dhcp
Код: Выделить всё
config 'interface' 'tislan'
option 'ifname' 'eth0.1'
option 'proto' 'dhcp'И устанавливал отдельно pppoe клиента. Пакет rp-pppoe-client.
Он имеет свой конфиг и стартует через init.d своим скриптом.
-
KiWi
- Бывший модератор
- Сообщения: 2521
- Статус: статус, статус, статус
-
serzh-z
- Бывший модератор
- Сообщения: 8259
- Статус: Маньяк
- ОС: Arch, Fedora, Ubuntu
Re: OpenWRT: решение для доступа в две сети
Ну это не совсем спортивно - хотелось бы не отказываться от штатных возможностей (конфигурирование через GUI, система конфигов UCI и т.д.) дистра. А так - можно вообще всё скрипты заменить на свои или запускать руками.
Не совсем то. Это только опускает/поднимает сам интерфейс - если же его включать/отключать через веб-морду, то там запускается/останавливается ещё некий демон (nasd вроде?) и что-то ещё. Т.е. просто поднять опустить интерфейс через wifi - этого недостаточно. Видимо придёться ковырять код GUI и повторять все те действия, которые он делает, в скрипте.
-
noob
- Сообщения: 212
Re: OpenWRT: решение для доступа в две сети
Дык пакет из их репы и скрипты их.
Так предусмотренно ставить доп. по из репов. Все типа штатно.
-
noob
- Сообщения: 212
Re: OpenWRT: решение для доступа в две сети
serzh-z писал(а): ↑09.11.2009 13:30Не совсем то. Это только опускает/поднимает сам интерфейс - если же его включать/отключать через веб-морду, то там запускается/останавливается ещё некий демон (nasd вроде?) и что-то ещё. Т.е. просто поднять опустить интерфейс через wifi - этого недостаточно. Видимо придёться ковырять код GUI и повторять все те действия, которые он делает, в скрипте.
именно эти команды и ложат/поднимают nasd
-
serzh-z
- Бывший модератор
- Сообщения: 8259
- Статус: Маньяк
- ОС: Arch, Fedora, Ubuntu
Re: OpenWRT: решение для доступа в две сети
Гм... Попробую ещё раз - может чего-то не досмотрел. Спасибо.
Вообще - хотел сделать включение/отключения Wi-Fi по расписанию, как это сделано во всех других прошивках. Может есть готовое решение, в виде сервиса? Или нужно писать скрипт, который запускать по крону?
-
eatmycat
- Сообщения: 1
Re: OpenWRT: решение для доступа в две сети
noob писал(а): ↑09.11.2009 12:48
Я делал проще.
В /etc/config/network на итерфейс тип dhcp
Код: Выделить всё
config 'interface' 'tislan' option 'ifname' 'eth0.1' option 'proto' 'dhcp'
И устанавливал отдельно pppoe клиента. Пакет rp-pppoe-client.
Он имеет свой конфиг и стартует через init.d своим скриптом.
Каким образом можно установить rp-pppoe-client на openwrt?
Не могу найти информацию. Connect on demand необходим.
-
Bizdelnick
- Модератор
- Сообщения: 21496
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: OpenWRT: решение для доступа в две сети
Как и всё остальное: opkg update; opkg install rp-pppoe-client
Пишите правильно:
| в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |