OpenWRT: решение для доступа в две сети

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модераторы: SLEDopit, Модераторы разделов

Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu

OpenWRT: решение для доступа в две сети

Сообщение serzh-z »

Есть домашний аппаратный роутер с установленным на него 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 вроде), потому и не могу найти решение.
Спасибо сказали:
Аватара пользователя
KiWi
Бывший модератор
Сообщения: 2521
Статус: статус, статус, статус

Re: OpenWRT: решение для доступа в две сети

Сообщение KiWi »

Насколько помню из копания скриптов поднятия сети -- то ли в случае pppoe, то ли в случае pptp автоматически на реальном интерфейсе идёт попытка получить настройки по DHCP(то есть статику прописать не получится, а вот в плане DHCP -- оно вполне себе Dual Access).
Спасибо сказали:
Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu

Re: OpenWRT: решение для доступа в две сети

Сообщение serzh-z »

KiWi писал(а):
26.09.2009 00:28
то ли в случае pppoe, то ли в случае pptp автоматически на реальном интерфейсе идёт попытка получить настройки по DHCP(то есть статику прописать не получится, а вот в плане DHCP -- оно вполне себе Dual Access).
Да вот не идёт. В 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: решение для доступа в две сети

Сообщение serzh-z »

Решил, что не стоит данная проблема больших затрат по времени и просто прописал присваивание статического IP и маршрутов в /etc/ppp/ip-up.d/. Не думаю, что пров часто меняет у себя привязку IP по MAC, если вообще её меняет. Может не красиво, но просто и работает.

Может кто-то знает - как в OpenWRT включать/отключать WiFi интерфейс? Хотелось бы его включать по расписанию, в определённые часы, как это было сделано в оригинальной прошивке от ASUS. Думаю просто засунуть команды включения/отключения в роутерный кронтаб.
Спасибо сказали:
Аватара пользователя
noob
Сообщения: 212

Re: OpenWRT: решение для доступа в две сети

Сообщение noob »

serzh-z писал(а):
26.09.2009 16:03
Решил, что не стоит данная проблема больших затрат по времени и просто прописал присваивание статического IP и маршрутов в /etc/ppp/ip-up.d/. Не думаю, что пров часто меняет у себя привязку IP по MAC, если вообще её меняет. Может не красиво, но просто и работает.


Я делал проще.
В /etc/config/network на итерфейс тип dhcp

Код: Выделить всё

config 'interface' 'tislan'
        option 'ifname' 'eth0.1'
        option 'proto' 'dhcp'


И устанавливал отдельно pppoe клиента. Пакет rp-pppoe-client.
Он имеет свой конфиг и стартует через init.d своим скриптом.
Спасибо сказали:
Аватара пользователя
KiWi
Бывший модератор
Сообщения: 2521
Статус: статус, статус, статус

Re: OpenWRT: решение для доступа в две сети

Сообщение KiWi »

serzh-z писал(а):
26.09.2009 16:03
Может кто-то знает - как в OpenWRT включать/отключать WiFi интерфейс?

wifi up / wifi down, если мне память не изменяет.
Спасибо сказали:
Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu

Re: OpenWRT: решение для доступа в две сети

Сообщение serzh-z »

noob писал(а):
09.11.2009 12:48
И устанавливал отдельно pppoe клиента. Пакет rp-pppoe-client.
Ну это не совсем спортивно - хотелось бы не отказываться от штатных возможностей (конфигурирование через GUI, система конфигов UCI и т.д.) дистра. А так - можно вообще всё скрипты заменить на свои или запускать руками.

KiWi писал(а):
09.11.2009 13:17
wifi up / wifi down, если мне память не изменяет.
Не совсем то. Это только опускает/поднимает сам интерфейс - если же его включать/отключать через веб-морду, то там запускается/останавливается ещё некий демон (nasd вроде?) и что-то ещё. Т.е. просто поднять опустить интерфейс через wifi - этого недостаточно. Видимо придёться ковырять код GUI и повторять все те действия, которые он делает, в скрипте.
Спасибо сказали:
Аватара пользователя
noob
Сообщения: 212

Re: OpenWRT: решение для доступа в две сети

Сообщение noob »

serzh-z писал(а):
09.11.2009 13:30
noob писал(а):
09.11.2009 12:48
И устанавливал отдельно pppoe клиента. Пакет rp-pppoe-client.
Ну это не совсем спортивно - хотелось бы не отказываться от штатных возможностей (конфигурирование через GUI, система конфигов UCI и т.д.) дистра. А так - можно вообще всё скрипты заменить на свои или запускать руками.


Дык пакет из их репы и скрипты их. :)
Так предусмотренно ставить доп. по из репов. Все типа штатно.
Спасибо сказали:
Аватара пользователя
noob
Сообщения: 212

Re: OpenWRT: решение для доступа в две сети

Сообщение noob »

serzh-z писал(а):
09.11.2009 13:30
KiWi писал(а):
09.11.2009 13:17
wifi up / wifi down, если мне память не изменяет.
Не совсем то. Это только опускает/поднимает сам интерфейс - если же его включать/отключать через веб-морду, то там запускается/останавливается ещё некий демон (nasd вроде?) и что-то ещё. Т.е. просто поднять опустить интерфейс через wifi - этого недостаточно. Видимо придёться ковырять код GUI и повторять все те действия, которые он делает, в скрипте.


именно эти команды и ложат/поднимают nasd
Спасибо сказали:
Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu

Re: OpenWRT: решение для доступа в две сети

Сообщение serzh-z »

noob писал(а):
09.11.2009 14:04
именно эти команды и ложат/поднимают nasd
Гм... Попробую ещё раз - может чего-то не досмотрел. Спасибо.

Вообще - хотел сделать включение/отключения Wi-Fi по расписанию, как это сделано во всех других прошивках. Может есть готовое решение, в виде сервиса? Или нужно писать скрипт, который запускать по крону?
Спасибо сказали:
eatmycat
Сообщения: 1

Re: OpenWRT: решение для доступа в две сети

Сообщение eatmycat »

noob писал(а):
09.11.2009 12:48
serzh-z писал(а):
26.09.2009 16:03
Решил, что не стоит данная проблема больших затрат по времени и просто прописал присваивание статического IP и маршрутов в /etc/ppp/ip-up.d/. Не думаю, что пров часто меняет у себя привязку IP по MAC, если вообще её меняет. Может не красиво, но просто и работает.


Я делал проще.
В /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: решение для доступа в две сети

Сообщение Bizdelnick »

eatmycat писал(а):
04.08.2014 22:42
Каким образом можно установить rp-pppoe-client на openwrt?

Как и всё остальное: opkg update; opkg install rp-pppoe-client
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали: