как подсунуть свой конфиг igmprt?

Post new topic   Reply to topic    DD-WRT Forum Forum Index -> Использование и установка DD-WRT
Author Message
eddy_mut
DD-WRT Novice


Joined: 13 Jan 2011
Posts: 6

PostPosted: Thu Jan 13, 2011 9:11    Post subject: как подсунуть свой конфиг igmprt? Reply with quote
Всем привет.

Доступ в интернет осуществляется через PPPoE
Когда я настраивал в оригинальной прошивке, было достаточно настроить Russian Dual Access PPPoE и поставить галочку Multicast.

В прошивке DD-WRT нет такого типа доступа, и когда я выбираю PPPoE то программа igmprt запускается с конфигом вида:

quickleave
phyint ppp0 upstream ratelimit 0 threshold 1
phyint br0 downstream ratelimit 0 threshold 1
phyint eth0 disabled
phyint eth1 disabled
phyint etherip0 disabled
phyint ath0 disabled
phyint lo disabled


А мне нужно что-бы апстримом был интерфейс eth0. Я могу переправить руками конфиг и перезапустить igmprt с исправленным конфигом.

Вопрос - как мне делать это автоматически?
Как сделать что-бы igmprt после перезагрузки запускался с МОИМ конфигом?
Sponsor
slimer
DD-WRT User


Joined: 29 Jul 2009
Posts: 390
Location: kemerovo, russia

PostPosted: Thu Jan 13, 2011 10:23    Post subject: Reply with quote
igmprt <config.name>
eddy_mut
DD-WRT Novice


Joined: 13 Jan 2011
Posts: 6

PostPosted: Thu Jan 13, 2011 11:38    Post subject: Reply with quote
Как запускать igmprt и с какими параметрами я знаю, а вот как сделать, что-бы после перезагрузки роутера в нём уже был нужный мне исправленный igmpproxy.conf?

Или подскажите как сделать что-бы после перезагрузки в этот /tmp/igmpproxy.conf вносились изменения?
vasek00
DD-WRT Guru


Joined: 06 Nov 2010
Posts: 2125

PostPosted: Thu Jan 13, 2011 12:15    Post subject: Reply with quote
eddy_mut wrote:
Как запускать igmprt и с какими параметрами я знаю, а вот как сделать, что-бы после перезагрузки роутера в нём уже был нужный мне исправленный igmpproxy.conf?

Или подскажите как сделать что-бы после перезагрузки в этот /tmp/igmpproxy.conf вносились изменения?


Создаете новый файл только через rc.startup например только со своими параметрами но перед этим можно удалить уже имеющийся (если хотите конечно, командой
rm /tmp/igmpproxy.confrm
– удалить igmpproxy.conf),

т.е.
Administration->Commands
В поле Command Shell-Commands набрать и нажать Save StartUp
Code:
...
echo -e "
quickleave
phyint ppp0 upstream  ratelimit 0  threshold 1
phyint br0 disabled
phyint br0:0 disabled
phyint eth2 disabled
phyint etherip0 disabled
phyint vlan1 disabled
phyint vlan2 disabled
phyint ra0 disabled
phyint apcli0 disabled
phyint wds0 disabled
phyint wds1 disabled
phyint wds2 disabled
phyint wds3 disabled
phyint wds4 disabled
phyint wds5 disabled
phyint wds6 disabled
phyint wds7 disabled
phyint wds8 disabled
phyint wds9 disabled
phyint lo disabled
">/tmp/igmpproxy.conf
chmod 644 /tmp/igmpproxy.conf


И все. Только все интерфейсы должны быть описаны, даже которые не используются. Вариант по умолчанию в системе DIR300/NRU
eddy_mut
DD-WRT Novice


Joined: 13 Jan 2011
Posts: 6

PostPosted: Thu Jan 13, 2011 12:44    Post subject: Reply with quote
Спасибо. Получилось. Сделал вот такой стартовый конфиг:

ifconfig eth0 10.10.10.32
sleep 10
echo "
quickleave
phyint eth0 upstream ratelimit 0 threshold 1
phyint br0 downstream ratelimit 0 threshold 1
phyint eth1 disabled
phyint etherip0 disabled
phyint ath0 disabled
phyint lo disabled
" > /tmp/igmpproxy.conf
killall -9 igmprt
igmprt /tmp/igmpproxy.conf
eddy_mut
DD-WRT Novice


Joined: 13 Jan 2011
Posts: 6

PostPosted: Thu Jan 13, 2011 14:03    Post subject: Reply with quote
Как оказалось, необходимо ещё и передёрнуть фаерволл таким образом:

iptables -t filter -D FORWARD 7
iptables -t filter -I FORWARD 7 -p udp -d 224.0.0.0/4 -m udp -j ACCEPT


Почему и зачем? хз Sad Но только так работает.
vasek00
DD-WRT Guru


Joined: 06 Nov 2010
Posts: 2125

PostPosted: Thu Jan 13, 2011 16:05    Post subject: Reply with quote
Остальные все интерфейсы рекомендуют в disabled
phyint [dev] disabled - интерфейс без мультикастинга

Так же есть параметр
altnet - локальные сети участвующие в мультикастинге
т.е. например

phyint eth0 upstream ratelimit 0 threshold 1
altnet 10.0.0.0/8
altnet 239.0.0.0/24
shystrik
DD-WRT Novice


Joined: 06 Mar 2011
Posts: 2

PostPosted: Sun Mar 06, 2011 22:26    Post subject: перезапуск igmprt при смене IP-адрес Reply with quote
привет всем, мультикаст у меня ходит через физический порт WAN (соответствует vlan2), интернет - через ppp0, динамический адрес. при включении ipmprt запускается с файлом настроек, в котором upstream - ppp0, это неверно. Своим скриптом rc_startup я делаю новый файл настроек с правильной конфигурацией, и все работает, пока на ppp0 не произойдет смена IP адреса. Сессия не рвется, просто переназначается адрес.. как результат - ipmprt запускается со старым конфигом, который до кучи еще и автогенерируется (я пробовал свои настройки писать и в /tmpigmpproxy.conf, по обновлении адреса он перетирается). Помогите отключить управление igmprt при сменах на ppp0...


upd:
Обнаружил еще проблему. Вот скрипт для создания нового файла настроек и перезапуска igmprt
Quote:
ifconfig vlan2 1.0.0.1 netmask 255.255.255.252
echo 'quickleave' >/tmp/igmprt.conf
echo 'phyint vlan2 upstream ratelimit 0 threshold 1' >>/tmp/igmprt.conf
echo 'phyint br0 downstream ratelimit 0 threshold 1' >>/tmp/igmprt.conf
echo 'phyint ppp0 disabled' >>/tmp/igmprt.conf
/usr/bin/killall -9 igmprt
(while :; do igmprt /tmp/igmprt.conf; sleep 10; done) &

Сам скрипт помещен в rc_startup
Если вставить через ssh руками, то все работает. При загурзке создается файл, но не убивается igmprt со старыми настройками!
shystrik
DD-WRT Novice


Joined: 06 Mar 2011
Posts: 2

PostPosted: Mon Mar 07, 2011 15:52    Post subject: Reply with quote
сам отвечу. Поставил тайм-аут в 45 секунд, работает как нужно. Плюс раз в сутки поставил ребут
Vrungel
DD-WRT Novice


Joined: 05 Feb 2011
Posts: 8

PostPosted: Sat Aug 13, 2011 10:50    Post subject: Reply with quote
shystrik wrote:
сам отвечу. Поставил тайм-аут в 45 секунд, работает как нужно. Плюс раз в сутки поставил ребут

Куда поставил тайм-аут?
У меня такая же ситуация.
Конфигурация сети такая же (рррое + локалка на vlan2)
DIR-300, H/W B.3, DD-WRT v24-sp2 (06/14/11) std
DualAcces настроил, работает.
Но igmprt при запуске не убивается Sad
Вот мой .rc_startup
Code:
ifconfig vlan2 10.140.9.31 netmask 255.255.0.0
route add -net 10.10.10.0 netmask 255.255.255.0 gw 10.140.9.1
echo "quickleave
phyint vlan2 upstream  ratelimit 0  threshold 1
phyint br0 downstream  ratelimit 0  threshold 1
phyint eth2 disabled
phyint etherip0 disabled
phyint vlan1 disabled
phyint ppp0 disabled
phyint ra0 disabled
phyint apcli0 disabled
phyint wds0 disabled
phyint wds1 disabled
phyint wds2 disabled
phyint wds3 disabled
phyint wds4 disabled
phyint wds5 disabled
phyint wds6 disabled
phyint wds7 disabled
phyint wds8 disabled
phyint wds9 disabled
phyint lo disabled
" > /tmp/igmprt.conf
/usr/bin/killall -9 igmprt
(while :; do igmprt /tmp/igmprt.conf; sleep 10; done) &

После загрузки в процессах следующее:
Code:
/tmp$ ps
  PID USER       VSZ STAT COMMAND
    1 root      1108 S    /sbin/init noinitrd
    2 root         0 SW<  [kthreadd]
    3 root         0 SW<  [ksoftirqd/0]
    4 root         0 SW<  [events/0]
    5 root         0 SW<  [khelper]
   34 root         0 SW<  [kblockd/0]
   53 root         0 SW   [pdflush]
   54 root         0 SW   [pdflush]
   55 root         0 SW<  [kswapd0]
   56 root         0 SW<  [aio/0]
  579 root         0 SW<  [mtdblockd]
 2227 root      1248 S    resetbutton
 2357 root         0 SW   [RtmpCmdQTask]
 2370 root      1008 S    telnetd
 2396 root       700 S    dnsmasq --conf-file=/tmp/dnsmasq.conf
 2405 root       608 S    cron
 2409 root      1016 S    dropbear -b /tmp/loginprompt -r /tmp/root/.ssh/ssh_ho
 2472 root      1424 S    pppd file /tmp/ppp/options.pppoe
 2474 root      1300 S    /tmp/ppp/redial 30
 2485 root      1108 S    ttraff
 2504 root      1792 S    startservice_f run_rc_startup
 2529 root      1008 S    /bin/sh /tmp/.rc_startup
 2678 root      2048 S    httpd -p 80
 2681 root       600 S    udhcpd /tmp/udhcpd.conf
 2748 root      1180 S    process_monitor
 3017 root       620 S    igmprt /tmp/igmpproxy.conf
 3026 root      1068 S    dropbear -b /tmp/loginprompt -r /tmp/root/.ssh/ssh_ho
 3027 root      1012 S    -sh
 3106 root      1004 S    sleep 10
 3107 root      1012 R    ps

если в консоли ввожу "killall igmprt", то процесс вначале как положено погибает, а затем САМ перезапускается секунд через 5-ть уже с нужным конфигом!
Code:
/tmp$ killall igmprt
/tmp$ ps
  PID USER       VSZ STAT COMMAND
    1 root      1108 S    /sbin/init noinitrd
    2 root         0 SW<  [kthreadd]
    3 root         0 SW<  [ksoftirqd/0]
    4 root         0 SW<  [events/0]
    5 root         0 SW<  [khelper]
   34 root         0 SW<  [kblockd/0]
   53 root         0 SW   [pdflush]
   54 root         0 SW   [pdflush]
   55 root         0 SW<  [kswapd0]
   56 root         0 SW<  [aio/0]
  579 root         0 SW<  [mtdblockd]
 2227 root      1248 S    resetbutton
 2357 root         0 SW   [RtmpCmdQTask]
 2370 root      1008 S    telnetd
 2396 root       700 S    dnsmasq --conf-file=/tmp/dnsmasq.conf
 2405 root       608 S    cron
 2409 root      1016 S    dropbear -b /tmp/loginprompt -r /tmp/root/.ssh/ssh_ho
 2472 root      1424 S    pppd file /tmp/ppp/options.pppoe
 2474 root      1300 S    /tmp/ppp/redial 30
 2485 root      1108 S    ttraff
 2529 root      1008 S    /bin/sh /tmp/.rc_startup
 2678 root      2048 S    httpd -p 80
 2681 root       600 S    udhcpd /tmp/udhcpd.conf
 2748 root      1180 S    process_monitor
 3026 root      1068 S    dropbear -b /tmp/loginprompt -r /tmp/root/.ssh/ssh_ho
 3027 root      1012 S    -sh
 3207 root       620 S    igmprt /tmp/igmprt.conf
 3232 root      1012 R    ps


Почему так?
Где я ошибся?
И как мне с этим жить дальше? Smile
Vrungel
DD-WRT Novice


Joined: 05 Feb 2011
Posts: 8

PostPosted: Sat Aug 13, 2011 12:51    Post subject: Reply with quote
Разобрался Smile
Вот работающий конфиг:
[code]ifconfig vlan2 10.140.9.31 netmask 255.255.0.0
route add -net 10.10.10.0 netmask 255.255.255.0 gw 10.140.9.1
sleep 25
killall igmprt
rm /tmp/igmpproxy.conf
echo "quickleave
phyint vlan2 upstream ratelimit 0 threshold 1
phyint br0 downstream ratelimit 0 threshold 1
phyint eth2 disabled
phyint etherip0 disabled
phyint vlan1 disabled
phyint ppp0 disabled
phyint ra0 disabled
phyint apcli0 disabled
phyint wds0 disabled
phyint wds1 disabled
phyint wds2 disabled
phyint wds3 disabled
phyint wds4 disabled
phyint wds5 disabled
phyint wds6 disabled
phyint wds7 disabled
phyint wds8 disabled
phyint wds9 disabled
phyint lo disabled
" > /tmp/igmpproxy.conf
igmprt /tmp/igmpproxy.conf &
Задержка (sleep 25) - это ожидание запуска igmprt. Попытаться его убить пока он не родился - нехорошо Wink В моём случае 25 секунд хватает (подбирал экспериментально).


Last edited by Vrungel on Sun Aug 14, 2011 16:37; edited 4 times in total
Vrungel
DD-WRT Novice


Joined: 05 Feb 2011
Posts: 8

PostPosted: Sat Aug 13, 2011 17:17    Post subject: Re: перезапуск igmprt при смене IP-адр Reply with quote
shystrik wrote:
все работает, пока на ppp0 не произойдет смена IP адреса. Сессия не рвется, просто переназначается адрес.. как результат - ipmprt запускается со старым конфигом, который до кучи еще и автогенерируется (я пробовал свои настройки писать и в /tmpigmpproxy.conf, по обновлении адреса он перетирается).

А вот это не поборол пока. Sad
Я в кроне раз в 30 минут рву рррое соединение. Так вот после этого перезапускается igmprt с конфигом в котором ррр0-upstream.
Как победить?
Vrungel
DD-WRT Novice


Joined: 05 Feb 2011
Posts: 8

PostPosted: Sun Aug 14, 2011 5:56    Post subject: Reply with quote
Поборол и эту напасть Smile
Пришлось написать скрипт и добавить его в крон вместе с разрывом рррое.
Code:
sleep 20
killall igmprt
rm /tmp/igmpproxy.conf
echo "quickleave
phyint vlan2 upstream  ratelimit 0  threshold 1
phyint br0 downstream  ratelimit 0  threshold 1
phyint eth2 disabled
phyint etherip0 disabled
phyint vlan1 disabled
phyint ppp0 disabled
phyint ra0 disabled
phyint apcli0 disabled
phyint wds0 disabled
phyint wds1 disabled
phyint wds2 disabled
phyint wds3 disabled
phyint wds4 disabled
phyint wds5 disabled
phyint wds6 disabled
phyint wds7 disabled
phyint wds8 disabled
phyint wds9 disabled
phyint lo disabled
" > /tmp/igmpproxy.conf
igmprt /tmp/igmpproxy.conf &
1791988
DD-WRT Novice


Joined: 27 May 2012
Posts: 1

PostPosted: Sun May 27, 2012 8:39    Post subject: Как настроить на DIR-300 PPPoE Reply with quote
Имею от провайдера имя пользователя и пароль + 2 штуки днс и мас к которому привязка у провайдера.. на официальной прошивке эти данные забиваешь и интернет есть а на прошивке dd-wrt непонятно куда прописывать DNSы и что делать?
nikilog
DD-WRT Novice


Joined: 21 Sep 2009
Posts: 5

PostPosted: Sun Jul 08, 2012 10:36    Post subject: инструкция готовая выложена Reply with quote
http://www.dd-wrt.com/phpBB2/viewtopic.php?t=156181
Display posts from previous:    Page 1 of 1
Post new topic   Reply to topic    DD-WRT Forum Forum Index -> Использование и установка DD-WRT All times are GMT

Navigation

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You cannot download files in this forum