Öncelikle uyarayım, bu bölüm bayağı uzun olacak. Burada anlatılanları adım adım dikkatlice uygulamanız gerekiyor, aksi takdirde cihazınıza erişimi kaybedip, cihazı sıfırlamak zorunda kalabilirsiniz. Bu ihtimale karşı System -> Backup bölümünden bir ayar yedeği almanız önemlidir. Burada anlatılanları bitirdikten sonra sadece bir kez Save & Apply tuşuna basacaksınız. Bu sayfada yaptıklarınızdan birinde yanlışlık olduğunu düşündüğünüz anda Revert (Geri çevir) tuşuna basarak değişiklikleri geri alabilir ve bu sayfanın başından başlayarak tekrar devam edebilirsiniz.
Network -> Interfaces -> Devices
Öncelikle bu yapılandırmanın çalışması için cihazın bütün fiziksel portlarının lanX ve wan portları dahil tek köprüde (br-all) toplanması gerekiyor. Daha önce DSA switch üzerinde bir çok deneme yaptım ama ya bazı cihazlarda çalışmadı ya da bazı sürümlerde çalışmadı. Bence DSA switch'ın driver tarafında hala eksikleri var. Bütün sürümlerde ve bütün cihazlarda çalışan yöntem, bütün fiziksel portların tek bir köprüde toplanması. Daha sonra bu köprüde IGMP Snooping etkinleştirip Bridge VLAN Filtering uygulayarak VLAN'ların hangi portlardan untagged/tagged geçeceğini belirteceğiz. Aynı zamanda portların primary vlan id (PVID) tanımlamalarını da yapacağız.
Ufak bir bilgi olması açısından bu kavramlardan kısaca bahsedeyim:
IGMP Snooping: IPTV ağından gelen multicast yayının bütün lan portlardan geçmesini engeller. Sadece tv yayınıyla ilgilenen lan portlara veri akışı sağlanır. Bu ayar LAN tarafında tanımlanır.
IGMP Proxy: IGMP isteklerinin yerel ağdan iptv ağına iletilmesini sağlar. Bu ayar WAN/ IPTV tarafında tanımlanır.
Tagged/Untagged: Bir portta untagged işlemi yapıldığında paketten VLAN bilgisi silinir, çünkü PC ve TV gibi cihazlar VLAN'dan anlamazlar. Router cihazlar ise VLAN bilgisi olan paketleri (tagged) işleyebilirler. Genelde router/switch tarafına bakan portlar TAGGED, PC-TV-Printer tarafına bakan portlar UNTAGGED olarak ayarlanır.
Primary VLAN ID: Her bir porta sadece bir tane PVID atanabilir. Bir porttan paket etiketsiz(untagged) olarak çıkış yaparsa bu VLAN ID atanır; yani portun varsayılan VLAN'ıdır. Bu yazıda VLAN1 lan tarafına, VLAN2 wan tarafına, VLAN103 ip tv tarafına bakan vlanlardır.
Şimdi ağ ayarlarımıza başlayalım:
Network -> Interfaces -> Devices -> Add device configuration
Device type: Bridge device, Device name: br-all
Bridge ports: Bütün fiziksel portlar (lan1-lanX ve wan) seçilecek.
Advanced device options sekmesinden Enable IGMP Snooping seçilecek.
Bridge VLAN filtering sekmesinde lan arayüzü için 1, wan arayüzü için 2, iptv arayüzü için 103 vlanlarını oluşturuyoruz.
VLAN1 için bütün lan portlar untagged(u),primary vlan(*) olarak, wan port not member(-) olarak işaretlenecek.
VLAN2 için bütün lan portlar not member(-), wan port untagged(u),primary vlan(*) olarak işaretlenecek.
VLAN103 için bütün lan portlar not member(-), wan port tagged(t) olarak işaretlenecek.
Sadece Save tuşuna basıyoruz. Save&Apply tuşuna basarsanız cihaza erişimi kaybedersiniz. Çünkü interface'ler için bu tanımladığımız vlanları sonraki aşamada ayarlayacağız.
Network -> Interfaces ->Interfaces
Bu sekmede lan ve wan interface için düzenleme yapıp, iptv adında yeni bir interface oluşturacağız. İleride kendiniz de interface oluşturmak isterseniz br-all.X seçeceksiniz. VLAN1 lan tarafına, VLAN2 wan tarafına, VLAN103 iptv tarafına bakan vlanları ifade etmektedir.
Sırasıyla (lan,wan) Interface EDIT tuşuna basıp lan interface için Device: (software vlan) br-all.1, wan interface için (software vlan) br-all.2, seçip SAVE tuşuna basıyoruz. Tekrar uyarıyorum, Save&Apply tuşuna basarsanız cihaza erişimi kaybedersiniz.
Interfaces -> Add new interface tuşuna basıp name:iptv için protocol:DHCP client oluşturacağız. Bu interface için device: (software vlan) br-all.103 seçeceğiz. Create interface tuşuna basıp Advanced Settings sekmesine geçiyoruz.
Use default gateway: OFF; Use DNS servers advertised by peer: OFF ayarlarını kapalı konuma getiriyoruz. Bu iki ayarı kapalı konumda tutmazsanız, aktif internet bağlantınız kopar.
Firewall Settings sekmesine geçip iptv interface için iptv zone seçiyoruz. SAVE tuşuna basıyoruz. Save&Apply tuşuna basarsanız cihaza erişimi kaybedersiniz.
Network -> Interfaces -> Devices
Devices sekmesine tekrar dönüyoruz. Burada ilk önce br-lan köprüsünden lan portları çıkarıp bu köprüyü sileceğiz. Kaydet&Uygula düğmesine basmayın dememin sebebi buydu. Bir portun iki köprüde tanımlanmasıyla cihaza erişimi kaybedebilirsiniz.
Daha sonra VLAN2 ve VLAN103 için mac clone yapacağız. Hatırlarsanız bir önceki aşamada br-all.2 wan için, br-all.103 iptv için tanımlanmıştı.
Devices sekmesinden br-lan'ın yanındaki tıklanabiliyorsa Unconfigure butonuna tıklıyoruz. Şimdi br-lan alt taraflara kayacak. Bu sefer Configure butonuna tıklıyoruz ve bridge port'tan her şeyi kaldırıyoruz. Yani listede hiç bir şey görünmeyecek. SAVE tuşuna basıyoruz.
Devices -> Add device configuration butonuna tıklıyoruz. Device type: VLAN (802.1q), Base device: br-all, VLAN ID:2. MAC Address bölümüne, superonline'nın verdiği orijinal cihazın MAC adresini yazıyoruz. (Save)
Add device configuration butonuna tekrar tıklıyoruz. Device type: VLAN (802.1q), Base device: br-all, VLAN ID:103. MAC Address bölümüne az önceki wan arayüzünün mac adresinin 16'lık tabanda +1 fazlası yazıyoruz. IPv6'ı devre dışı bırakıyoruz.
Örnek: superonline wan mac xx:xx:xx:xx:xx:09 ise, iptv için mac xx:xx:xx:xx:xx:0A olacak. (Save)
Save & Apply
Bu bölümün sonuna geldik. Şimdi sayfanın en üstünde sağ tarafta (UNSAVED CHANGES:XX) bir çok değişiklik yapıldığını görebilirsiniz. Şimdi SAVE & APPLY butonuna basabilirsiniz. 15 sn içinde yeni ağ ayarlarınız uygulanacaktır. Artık cihazınız bridge vlan filtering modunda çalışmakta ve vlan yönetimi için sadece br-all köprüsünü kullanıyoruz.
Yapılan değişikliklerin özeti aşağıdadır: /etc/config/network
config device
option type 'bridge'
option name 'br-all'
list ports 'lan1'
list ports 'lan2'
list ports 'wan'
option igmp_snooping '1'
config bridge-vlan
option device 'br-all'
list ports 'lan1:u*'
list ports 'lan2:u*'
option vlan '1'
config bridge-vlan
option device 'br-all'
list ports 'wan:u*'
option vlan '2'
config bridge-vlan
option device 'br-all'
list ports 'wan:t'
option vlan '103'
config interface 'lan'
...
option device 'br-all.1'
config interface 'wan'
...
option device 'br-all.2'
config interface 'iptv'
option device 'br-all.103'
option proto 'dhcp'
option defaultroute '0'
option peerdns '0'
config device
option type '8021q'
option name 'br-all.2'
option ifname 'br-all'
option vid '2'
option macaddr 'xx:xx:xx:xx:xx:09'
config device
option type '8021q'
option name 'br-all.103'
option ifname 'br-all'
option vid '103'
option ipv6 '0'
option macaddr 'xx:xx:xx:xx:xx:0A'
config device
option type 'bridge'
option name 'br-lan'
Sonraki bölümde yönlendirme ayarlarını yapacağız.