Не сохраняются настройки VLAN

Post new topic   Reply to topic    DD-WRT Forum Index -> Использование и установка DD-WRT
Goto page 1, 2  Next
Author Message
gep2005
DD-WRT Novice


Joined: 17 Jul 2013
Posts: 10

PostPosted: Wed Jul 17, 2013 14:49    Post subject: Не сохраняются настройки VLAN Reply with quote
Пытаюсь настроить отдельную сеть на 4-м порту ASUS RT-N66U. Сначала долго бился через WebGUI потом нашел здесь, что это надо делать не через GUI, а через телнет. Подключился настроил. Перезагрузка и все по новой. Пока не зайдеш на WebGUI и не ткнеш там 4-й порт на 3-й VLAN.
Тыкаеш, ждеш немного и работает.
Как автоматизировать?

PS Сразу после перезагрузки переменные в nvram такие:
Code:
root@DD-WRT:~# nvram show | grep vlan.*ports
vlan2ports=0 8
vlan3ports=4 8
vlan1ports=1 2 3 8*

root@DD-WRT:~# nvram show | grep port.*vlans
port5vlans=1 2 16
port3vlans=1
port1vlans=1
port4vlans=1
port2vlans=1
port0vlans=2

root@DD-WRT:~# nvram show | grep vlan.*hwname
vlan3hwname=et0
vlan2hwname=et0
vlan1hwname=et0


Если переткнуть VLAN3 через GUI, то такие:
Code:
root@DD-WRT:~# nvram show | grep vlan.*ports
vlan2ports=0 8
vlan3ports=4 8
vlan1ports=1 2 3 8*

root@DD-WRT:~# nvram show | grep port.*vlans
port5vlans=1 2 3 16
port3vlans=1 18 19 21
port1vlans=1 18 19 21
port4vlans=3 18 19 21
port2vlans=1 18 19 21
port0vlans=2 18 19 21

root@DD-WRT:~# nvram show | grep vlan.*hwname
vlan3hwname=et0
vlan2hwname=et0
vlan1hwname=et0

Но все что изменяю через telnet после перезагрузки не сохраняется Sad
Sponsor
dobs
DD-WRT User


Joined: 11 Feb 2011
Posts: 380
Location: /home/Ukraine/Kyiv

PostPosted: Thu Jul 18, 2013 6:58    Post subject: Reply with quote
Code:
nvram commit

Не помогает?

_________________
Home - DIR-825 r22118
Work - DIR-825 x2 OpenWRT

OCR Free Compare robot vacuum
vasek00
DD-WRT Guru


Joined: 06 Nov 2010
Posts: 3312

PostPosted: Thu Jul 18, 2013 7:06    Post subject: Re: Не сохраняются настройки VLAN Reply with quote
gep2005

Ну тогда что мешает давать данные команды в startup скрипте.
gep2005
DD-WRT Novice


Joined: 17 Jul 2013
Posts: 10

PostPosted: Thu Jul 18, 2013 9:06    Post subject: Reply with quote
Quote:
Ну тогда что мешает давать данные команды в startup скрипте.
Так и сделал. Теперь при перезагрузки галочки в WebGUI на месте, а пинг на этот порт (IP назначенный этому порту не идет). Снятие/установка галки на странице VLAN помогает. Но нужно то автономное решение. Кстати по присвоению IP - сделал так: бридж br1 ему присваиваю IP 10.1.0.254/24 и в этот br1 включаю vlan3. Пробовал Unbridge ставить и указывать IP там. Вообще не пингуется.
PS На всякий случай - задача выделить 4-й порт в отдельную сеть 10.1.0.0/24. DHCP не важен. И дать этой сети выход в инет. с инетом тоже пока вопрос. Я так понимаю если у меня vlan3 включен в br1, то в iptable я должен прописывать правила именно для br1, а не для vlan3?
vasek00
DD-WRT Guru


Joined: 06 Nov 2010
Posts: 3312

PostPosted: Fri Jul 19, 2013 6:33    Post subject: Reply with quote
gep2005 wrote:
Quote:
Ну тогда что мешает давать данные команды в startup скрипте.
Так и сделал. Теперь при перезагрузки галочки в WebGUI на месте, а пинг на этот порт (IP назначенный этому порту не идет). Снятие/установка галки на странице VLAN помогает. Но нужно то автономное решение. Кстати по присвоению IP - сделал так: бридж br1 ему присваиваю IP 10.1.0.254/24 и в этот br1 включаю vlan3. Пробовал Unbridge ставить и указывать IP там. Вообще не пингуется.
PS На всякий случай - задача выделить 4-й порт в отдельную сеть 10.1.0.0/24. DHCP не важен. И дать этой сети выход в инет. с инетом тоже пока вопрос. Я так понимаю если у меня vlan3 включен в br1, то в iptable я должен прописывать правила именно для br1, а не для vlan3?

Вы сделали на половину, вам не нужно трогать GUI все попробуйте сделать в ручную, т.е. все что делали выше до GUI плюс команды:
1. vconfig add имя_основного_интерфеса 3 (создать vlan3) поднять на нем ip просто - ifconfig vlan3 х.х.х.х netmask х.х.х.х up (основной интерфейс через ifconfig)
2. если в бридж его то после vconfig команда создать например br1 - brctl addif br1 vlan3, ip адрес присвоить через ifconfig.
Хотя бридж не нужен у вас и так vlan3 имеет ip и с ним можно работать через iptables (iptables -nvL и iptables -t nat -nvL)
3. для выхода в интернет пример использования данных команд на другом устройстве, где ppp0 интерфес для интернета, eth2 основной интерфейс устройства (у вас он может быть другой), тут доступ только к ppp0 к vlan1/vlan2/br1 нет:
Code:
vconfig add eth2 3
ifconfig vlan3 192.168.0.99 netmask 255.255.255.0 up
iptables -I INPUT -i vlan3 -j ACCEPT
iptables -I INPUT -i vlan3 -m state --state NEW -j logaccept
iptables -I FORWARD -i vlan3 -o vlan3 -j ACCEPT
iptables -I FORWARD -i vlan3 -m state --state NEW -j ACCEPT
iptables -I FORWARD -i vlan3 -o vlan3 -j ACCEPT
iptables -I OUTPUT -o vlan3 -j ACCEPT
iptables -t nat -I POSTROUTING 1 -o vlan3 -j SNAT --to-source 192.168.0.99
iptables -I FORWARD -i vlan3 -j trigger_out
iptables -I FORWARD -i ppp0 -o vlan3 -j TRIGGER --trigger-type in
iptables -I FORWARD -i vlan3 -o ppp0 -j ACCEPT


основной по ifconfig для ethernet, он должен иметь прерывание
Code:
root@My-Fan:~# ifconfig
...
eth2      Link encap:Ethernet  .....
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1520728 errors:0 dropped:0 overruns:0 frame:0
          TX packets:377681 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:156191917 (148.9 MiB)  TX bytes:31282508 (29.8 MiB)
          Interrupt:5
...
root@My-Fan:~#
gep2005
DD-WRT Novice


Joined: 17 Jul 2013
Posts: 10

PostPosted: Fri Jul 19, 2013 7:03    Post subject: Reply with quote
Не заметил, а как вы указываете какой именно порт выделить во вновь создаваемый VLAN?
vasek00
DD-WRT Guru


Joined: 06 Nov 2010
Posts: 3312

PostPosted: Fri Jul 19, 2013 7:07    Post subject: Reply with quote
gep2005 wrote:
Не заметил, а как вы указываете какой именно порт выделить во вновь создаваемый VLAN?

На Ralinke проще, но вы же делаете для broadcom и уже есть та часть которая вырезает порт.
gep2005
DD-WRT Novice


Joined: 17 Jul 2013
Posts: 10

PostPosted: Fri Jul 19, 2013 8:21    Post subject: Reply with quote
Ааа, то есть сначала я вырезаю прот:
Code:
vlan2ports=0 8
vlan3ports=4 8
vlan1ports=1 2 3 8*
port5vlans=1 2 3 16
port3vlans=1 18 19 21
port1vlans=1 18 19 21
port4vlans=3 18 19 21
port2vlans=1 18 19 21
port0vlans=2 18 19 21
vlan3hwname=et0
vlan2hwname=et0
vlan1hwname=et0

а затем уже то что вы сказали. Все я понял. Огромное спасибо!
PS помогло очень, только странно ftp (из FAR'а) и обновления windows, ну и пинги собственно заработали, а вот в Хроме странички не открываются. При том что сервера "этих страничек" пингуются нормально Sad
gep2005
DD-WRT Novice


Joined: 17 Jul 2013
Posts: 10

PostPosted: Fri Jul 19, 2013 8:54    Post subject: Reply with quote
Блин. Работает только до перезагрузки. Опять почему, то на вкладке VLAN 4-й порт вместе со всеми и не работает. Если зайти в GUI и переставить, то все начинает работать. Т.е. кроме этой галочки ничего больше не меняю, все остальное в скриптах отрабатывает нормально Sad
gep2005
DD-WRT Novice


Joined: 17 Jul 2013
Posts: 10

PostPosted: Fri Jul 19, 2013 9:01    Post subject: Reply with quote
gep2005 wrote:
только странно ftp (из FAR'а) и обновления windows, ну и пинги собственно заработали, а вот в Хроме странички не открываются. При том что сервера "этих страничек" пингуются нормально Sad

Блин нафига я включал на этом компе работу через прокси хоть убей не помню Smile
Осталось заставить работать VLAN после перезагрузки.
gep2005
DD-WRT Novice


Joined: 17 Jul 2013
Posts: 10

PostPosted: Fri Jul 19, 2013 9:45    Post subject: Reply with quote
Чувствую, что просто где-то маленько ошибаюсь. На всякий случай выкладываю, что у меня сейчас в http://10.0.0.254/Diagnostics.asp
В Startup:
Code:
vlan2ports="0 8"
vlan3ports="4 8"
vlan1ports="1 2 3 8*"
port5vlans="1 2 3 16"
port3vlans="1 18 19 21"
port1vlans="1 18 19 21"
port4vlans="3 18 19 21"
port2vlans="1 18 19 21"
port0vlans="2 18 19 21"
vlan3hwname=et0
vlan2hwname=et0
vlan1hwname=et0
vconfig add eth0 3
ifconfig vlan3 10.1.0.254 netmask 255.255.255.0 up

Тут же нигде не надо писать nvram set?
в Firewall:
Code:
iptables -I INPUT -i vlan3 -j ACCEPT
iptables -I INPUT -i vlan3 -m state --state NEW -j logaccept
iptables -I FORWARD -i vlan3 -o vlan3 -j ACCEPT
iptables -I FORWARD -i vlan3 -m state --state NEW -j ACCEPT
iptables -I FORWARD -i vlan3 -o vlan3 -j ACCEPT
iptables -I OUTPUT -o vlan3 -j ACCEPT
iptables -t nat -I POSTROUTING -s 10.1.0.0/255.255.255.0 -j SNAT --to 9x.x.x.x2
iptables -I FORWARD -i vlan3 -j trigger_out
iptables -I FORWARD -i vlan2 -o vlan3 -j TRIGGER --trigger-type in
iptables -I FORWARD -i vlan3 -o vlan2 -j ACCEPT

На данный момент работает так: Перезагружаеш, на порту 4 ничего, не идет даже пинг на 10.1.0.254. Захожу в GUI и перетыкаю порт 4 на VLAN 3 - Aplay и начинает работать 4-й порт как надо. Как бы это победить?


Last edited by gep2005 on Fri Jul 19, 2013 11:27; edited 1 time in total
vasek00
DD-WRT Guru


Joined: 06 Nov 2010
Posts: 3312

PostPosted: Fri Jul 19, 2013 11:24    Post subject: Reply with quote
Мне тогда не понятен ваш первый пост, даете ссылку в которой все описано как вводить и делаете все по ней, потом результат, то что у вас получилось vlan3, но не сохраняется в памяти. Теперь приводите непонятные команды.

1.
Code:

nvram set vlan2ports="0 8"
nvram set vlan2ports="0 8"
nvram set vlan3ports="4 8"
nvram set vlan1ports="1 2 3 8*"
nvram set port5vlans="1 2 3 16"
nvram set port3vlans="1 18 19 21"
nvram set port1vlans="1 18 19 21"
nvram set port4vlans="3 18 19 21"
nvram set port2vlans="1 18 19 21"
nvram set port0vlans="2 18 19 21"
nvram set vlan3hwname=et0
nvram set vlan2hwname=et0
nvram set vlan1hwname=et0
nvram commit
reboot


Если не сохраняется в nvram как вы указываете (после перезагрузки остается старое), то далее делаем эти команды в startup так же как и вводили через telnet, и добавив vlan3 а именно:
2.
Code:

nvram set vlan2ports="0 8"
nvram set vlan2ports="0 8"
nvram set vlan3ports="4 8"
nvram set vlan1ports="1 2 3 8*"
nvram set port5vlans="1 2 3 16"
nvram set port3vlans="1 18 19 21"
nvram set port1vlans="1 18 19 21"
nvram set port4vlans="3 18 19 21"
nvram set port2vlans="1 18 19 21"
nvram set port0vlans="2 18 19 21"
nvram set vlan3hwname=et0
nvram set vlan2hwname=et0
nvram set vlan1hwname=et0
sleep 1
vconfig add eth0 3
ifconfig vlan3 10.1.0.254 netmask 255.255.255.0 up

Смотрим что получили по ifconfig.

3. далее правила по iptables, и проверка

И сделайте скрин где вы GUI "перетыкаете" кабель.
gep2005
DD-WRT Novice


Joined: 17 Jul 2013
Posts: 10

PostPosted: Fri Jul 19, 2013 11:26    Post subject: Reply with quote
Всем ОГРОМНОЕ спасибо! Особенно vasek00!
Решил попробовать с нуля. Сбросил роутер с помошью 30/30/30 на дефолт, включил телнет. И дальше пробовал все делать только из него не трогая GUI.
Сделал:
Code:
nvram set vlan1ports="1 2 3 8*"
nvram set vlan2ports="0 8"
nvram set vlan3ports="4 8"
nvram set port0vlans="2 18 19 21"
nvram set port1vlans="1 18 19 21"
nvram set port2vlans="1 18 19 21"
nvram set port3vlans="1 18 19 21"
nvram set port4vlans="3 18 19 21"
nvram set port5vlans="1 2 3 16"
nvram set vlan1hwname=et0
nvram set vlan2hwname=et0
nvram set vlan3hwname=et0
nvram commit
reboot

vlan*ports и vlan*hwname сохранились, а port*vlans нет.
Тогда путем научного тыка подобрал:
Code:
nvram set rc_startup='
#!/bin/ash
PATH="/sbin:/usr/sbin:/bin:/usr/bin:${PATH}"
nvram set port4vlans="3"
nvram commit
vconfig add eth0 3
ifconfig vlan3 10.1.0.254 netmask 255.255.255.0 up
'
nvram commit
reboot

в результате:
Code:
root@DD-WRT:~# nvram show | grep port.*vlans
port5vlans=1 2 16
port3vlans=1
port1vlans=1
nvram set port4vlans="3"
port4vlans=3
port2vlans=1
port0vlans=2

строчка nvram set port4vlans="3" работе VLAN'ов не мешает. Важно, то что port4vlans=3.
Ну и уже через GUI добавил в Firewall:
Code:
iptables -I INPUT -i vlan3 -j ACCEPT
iptables -I INPUT -i vlan3 -m state --state NEW -j logaccept
iptables -I FORWARD -i vlan3 -o vlan3 -j ACCEPT
iptables -I FORWARD -i vlan3 -m state --state NEW -j ACCEPT
iptables -I FORWARD -i vlan3 -o vlan3 -j ACCEPT
iptables -I OUTPUT -o vlan3 -j ACCEPT
iptables -t nat -I POSTROUTING -s 10.1.0.0/255.255.255.0 -j SNAT --to 9x.x.x.x2
iptables -I FORWARD -i vlan3 -j trigger_out
iptables -I FORWARD -i vlan2 -o vlan3 -j TRIGGER --trigger-type in
iptables -I FORWARD -i vlan3 -o vlan2 -j ACCEPT

И все заработало как надо.
vasek00
DD-WRT Guru


Joined: 06 Nov 2010
Posts: 3312

PostPosted: Fri Jul 19, 2013 11:35    Post subject: Reply with quote
gep2005 wrote:

Тогда путем научного тыка подобрал:
Code:
nvram set rc_startup='
#!/bin/ash
PATH="/sbin:/usr/sbin:/bin:/usr/bin:${PATH}"
nvram set port4vlans="3"
nvram commit
vconfig add eth0 3
ifconfig vlan3 10.1.0.254 netmask 255.255.255.0 up
'
nvram commit
reboot


переменная rc_startup - это и есть тот скрипт из Startup, а при чем тут две строчки :
Code:

#!/bin/ash
PATH="/sbin:/usr/sbin:/bin:/usr/bin:${PATH}"
gep2005
DD-WRT Novice


Joined: 17 Jul 2013
Posts: 10

PostPosted: Fri Jul 19, 2013 11:35    Post subject: Reply with quote
vasek00 wrote:
Мне тогда не понятен ваш первый пост, даете ссылку в которой все описано как вводить и делаете все по ней, потом результат, то что у вас получилось vlan3, но не сохраняется в памяти. Теперь приводите непонятные команды.

Извините, что не точно объяснил. После перезагрузки не сохранялось именно port*vlans, все остальные команды сохранялись и при ГУИшном способе и через телнет.

vasek00 wrote:

Если не сохраняется в nvram как вы указываете (после перезагрузки остается старое), то далее делаем эти команды в startup так же как и вводили через telnet

Я так пробовал, но из-за того что часть настроек сохранилась, а часть нет, то они задваивались. А оставить в скрипте только port*vlans я догадался уже только сейчас.

vasek00 wrote:

Code:

sleep 1


Это для надежности? Просто пока у меня и так работает. Или лучше добавить?

vasek00 wrote:

И сделайте скрин где вы GUI "перетыкаете" кабель.

Ну это я образно сказал - на вкладке VLAN галочку переставлял Smile[/quote]
Goto page 1, 2  Next Display posts from previous:    Page 1 of 2
Post new topic   Reply to topic    DD-WRT 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