Edgerouter X met tv configureren

Een paar maanden geleden heb ik een edgerouter X aangeschaft op aanraden van een vriend die ook tweak heeft. Het zou sneller zijn en met een unifi AP een goede vervanging van mijn 5ghz router die defect was gegaan.
Ik ben er inmiddels een aantal avonden mee bezig geweest maar ik krijg het niet voor elkaar. Is er iemand die mij kan vertellen hoe ik de edgerouter X voor tweak moet configureren, inclusief de benodigde VLANs?
Ik heb de topcis op tweakers gevonden, maar hoe krijg ik de stukjes “code” in de router? Of is er een manier om de instellingen via de webGUI te doen?

Alvast bedankt

Je hebt je nogal wat op de hals gehaald met de aanschaf van de Edgerouter X.
Ikzelf heb de ER-12.
Deze routers zijn niet bedoeld voor de gewone consument die geen kaas heeft gegeten van het werken via de CLI, de commando-structuur van EdgeOS niet begrijpen etc.

Ubiquiti heeft een vrij uitgebreide help-website (https://help.ubnt.com/hc/en-us/categories/200321064-EdgeMAX).

Kijk hier eens rond, maak je vertrouwd met de commando-structuur.

Voor beginners: gebruik de wizard.

De Edgerouter is inderdaad niet entry level spulleboel. (heb zelf een Edgerouter Lite en het heeft mij ook de nodige koppijn bezorgd)

Het goede nieuws is dat je niet hoeft te knippen en plakken. Je kunt alle configuraties middels de ‘config tree’ uitvoeren. Echter als je niet bekend bent met netwerk terminologie dan wordt het wel erg lastig.

Gelukkig zijn er al mensen je voor gegaan:

http://www.nickd.nl/tweak/edgerouter/

De configuratie is met kleine aanpassingen bruikbaar op jouw Edgerouter X.

Via ssh kan je verbinden met de Edgerouter, default login ubnt en wachtwoord ook ubnt. In Windows heb je putty nodig om via ssh in het apparaat te kunnen komen.

Allen,bedankt voor het meedenken zo ver. Het is niet makkelijk, maar goed als dat je tegenhoud dan pak je nooit wat nieuws op natuurlijk.
Ik denk dat ik nu het grootste deel voor elkaar heb, er gebeurt iets, maar het werkt nog niet. Zodra ik de fout gevonden heb zal ik stap voor stap posten hoe ik het voor elkaar heb gekregen.

Hi @Hilarius, is het ondertussen gelukt? Zo niet, kan je je configuratie delen (met de spannende punten natuurlijk eruit)? Ik draai nu een ER4 en een ER-PRO, het moet dus aardig te doen zijn met de ER X (SFP?).

Oke, het heeft even geduurd voordat ik weer tijd had. Inmiddels heb de de ER X achter de router van tweak gehangen en mijn eigen netwerk opgetogen. Ik moet me nog even verdiepen in de firewall, maar de rest lijkt te werken. Ik heb ook een backup van deze configuratie gemaakt zodat ik snel alles weer naar een werkende staat kan brengen.

Op basis van de info op het forum van tweakers en diverse blogs heb ik het probleem in stukken geknipt en configureer ik het volgende via putty:

Stap 1: VLAN’s aanmaken:
delete interfaces ethernet eth0 address

set interfaces ethernet eth0 description “WAN”
set interfaces ethernet eth0 duplex auto
set interfaces ethernet eth0 speed auto

set interfaces ethernet eth0 vif 4 address dhcp
set interfaces ethernet eth0 vif 4 description “WAN-IPTV”

set interfaces ethernet eth0 vif 34 address dhcp
set interfaces ethernet eth0 vif 34 description “WAN-Internet”

Dit lijkt te werken, ik zie op de webUI twee vlans en die krijgen ieder en IP

Stap 2: IGMP snooping aanzetten:
set protocols igmp-proxy interface eth0.4 alt-subnet 0.0.0.0/0
set protocols igmp-proxy interface eth0.4 role upstream
set protocols igmp-proxy interface eth0.4 threshold 1

set protocols igmp-proxy interface eth2 alt-subnet 0.0.0.0/0
set protocols igmp-proxy interface eth2 role downstream
set protocols igmp-proxy interface eth2 threshold 1

set protocols igmp-proxy interface eth0 role disabled
set protocols igmp-proxy interface eth0.34 role disabled
set protocols igmp-proxy interface eth1 role disabled
set protocols igmp-proxy interface eth3 role disabled
set protocols igmp-proxy interface eth4 role disabled

Als ik het goed begrijp zet ik hier IGMP snooping op VLAN 4 aan en worden de multicast (IPTV?) pakket naar eth poort 2 gestuurd. Op de andere interfaces zet ik dit uit om ruis te voorkomen.

Stap 3: static routes:
set service nat rule 5000 description IPTV 1 – hier error op
set service nat rule 5000 log disable
set service nat rule 5000 outbound-interface eth0.34
set service nat rule 5000 protocol all
set service nat rule 5000 destination address 185.24.175.0/24
set service nat rule 5000 type masquerade

set service nat rule 5001 description IPTV 2 – hier error op
set service nat rule 5001 log disable
set service nat rule 5001 outbound-interface eth0.34
set service nat rule 5001 protocol all
set service nat rule 5001 destination address 185.41.48.0/24
set service nat rule 5001 type masquerade

set protocols static route 185.24.175.0/24 next-hop 10.10.37.12
set protocols static route 185.41.48.0/24 next-hop 10.10.37.12

Hier configureer ik een static route voor het IPTV verkeer naar 2 ip adressen. Ik ben niet helemaal zeker of ik dit juist doe.

Stap 4: whitelist
set protocols igmp-proxy interface eth2 whitelist 239.0.3.0/16
set protocols igmp-proxy interface eth2 whitelist 225.0.71.0/24
set protocols igmp-proxy interface eth2 whitelist 224.0.0.0/16

Hier whitelist ik een aantal IP’s omdat dit bij veel gebruikers problemen oplost.

Vorige week resulteerde dit niet in een werkende setup, sindsdien heb ik de router gereset, om eventuele andere fouten te verwijderen en zal ik het nog een keer proberen.

Mocht iemand met meer verstand van deze materie dit willen controleren dan graag! Ik update zsm weer.

Ik heb het idee dat je hier ook de vLAN’s in de weg zit, dat is namelijk ook je inkomende downstream. Mijn configuratie is alsvolgt:

protocols {
    igmp-proxy {
        interface eth0 {
            role downstream
            threshold 1
            whitelist 239.0.0.0/16
            whitelist 225.0.71.0/24
            whitelist 224.0.0.0/16
        }
        interface eth1 {
            alt-subnet 0.0.0.0/0
            role downstream
            threshold 1
        }
        interface eth3.4 {
            alt-subnet 0.0.0.0/0
            role upstream
            threshold 1
        }
        interface eth3.34 {
            role disabled
            threshold 1
        }
    }
    static {
        interface-route6 ::/0 {
            next-hop-interface tun0 {
            }
        }
        route 185.24.175.0/24 {
            next-hop 10.10.32.1 {
                description "Almere Buiten IPTV"
                distance 50
            }
        }
    }
}

IGMP vereist dat je dit expliciet doet, het is dus geen oplossing maar een vereiste. :slight_smile:

@Yvan, bedankt voor je bericht, ik zal hier nog eens naar kijken en proberen. Kun jij mij misschien wat meer uitleggen over upstream en downstream? wat configureer ik hier eigenlijk en waarom is dit nodig?

Nou, ik heb inmiddels de volgende configuratie op basis van de info van nickd en tweakers. Ik heb ook de mac adressen overgenomen van de zyxell router, en krijg de zelfde ip adressen. Helaas houd het hier verder op. Ik heb geen internet verbinding en geen tv.
Er zal dus nog ergens een instelling niet goed zijn, mocht iemand mee willen kijken, graag!

firewall {
    all-ping enable
    broadcast-ping disable
    ipv6-receive-redirects disable
    ipv6-src-route disable
    ip-src-route disable
    log-martians enable
    name WAN_IN {
        default-action drop
        description "WAN to internal"
        rule 10 {
            action accept
            description "Allow established/related"
            log disable
            protocol all
            state {
                established enable
                related enable
            }
        }
        rule 20 {
            action drop
            description "Drop invalid state"
            log disable
            protocol all
            state {
                invalid enable
            }
        }
    }
    name WAN_LOCAL {
        default-action drop
        description "WAN to router"
        rule 10 {
            action accept
            description "Allow established/related"
            log disable
            protocol all
            state {
                established enable
                related enable
            }
        }
        rule 20 {
            action drop
            description "Drop invalid state"
            log disable
            protocol all
            state {
                invalid enable
            }
        }
        rule 21 {
            action accept
            description "Allow ping"
            log disable
            protocol icmp
        }
    }
    receive-redirects disable
    send-redirects enable
    source-validation disable
    syn-cookies enable
}
interfaces {
    ethernet eth0 {
        description WAN
			dhcp-options {
                default-route no-update
                default-route-distance 1
                name-server no-update
            }	            
        duplex auto
        speed auto
        vif 4 {
            address dhcp
            description WAN-IPTV
			dhcp-options {
                default-route no-update
                default-route-distance 210
                name-server no-update
            }
            mac 10:7B:
        }
        vif 34 {
            address dhcp
            description WAN-Internet
            dhcp-options {
                default-route update
                default-route-distance 50
                name-server update
            }
            firewall {
                in {
                    name WAN_IN
                }
                local {
                    name WAN_LOCAL
                }
            }
            mac 10:7B:
        }
    }
    ethernet eth1 {
        description Local
        duplex auto
        speed auto
    }
    ethernet eth2 {
        description Local
        duplex auto
        speed auto
    }
    ethernet eth3 {
        description Switch
        duplex auto
        poe {
            output off
        }
        speed auto
    }
    ethernet eth4 {
        description AP
        duplex auto
        poe {
            output 24v
        }
        speed auto
    }
    ethernet eth5 {
        duplex auto
        speed auto
    }
    loopback lo {
    }
    switch switch0 {
        address 192.168.2.1/24
        description Local
        mtu 1500
        switch-port {
            interface eth1 {
            }
            interface eth2 {
            }
            interface eth3 {
            }
            interface eth4 {
            }
            vlan-aware disable
        }
    }
}
protocols {
    igmp-proxy {
        interface eth0 {
            role disabled
            threshold 1
        }
        interface eth0.4 {
            alt-subnet 0.0.0.0/0
            role upstream
            threshold 1
        }
        interface eth0.34 {
            role disabled
            threshold 1
        }
        interface eth1 {
            role disabled
            threshold 1
        }
        interface eth2 {
            alt-subnet 0.0.0.0/24
            role downstream
            threshold 1
            whitelist 239.0.3.0/16
            whitelist 225.0.71.0/24
            whitelist 224.0.0.0/16
        }
        interface eth3 {
            role disabled
            threshold 1
        }
        interface eth4 {
            role disabled
            threshold 1
        }
    }
    static {
        route 185.41.48.0/24 {
            next-hop 10.10.48.1 {
            }
        }
    }
}
service {
    dhcp-server {
        disabled false
        hostfile-update disable
        shared-network-name LAN {
            authoritative enable
            subnet 192.168.2.0/24 {
                default-router 192.168.2.1
                dns-server 192.168.2.1
                dns-server 192.168.2.20
                dns-server 1.1.1.1
                lease 86400
                start 192.168.2.100 {
                    stop 192.168.2.199
                }
                static-mapping Batanas {
                    ip-address 192.168.2.2
                    mac-address 00:11:
                }
                static-mapping INV005815920016 {
                    ip-address 192.168.2.3
                    mac-address fc:c2:
                }
                static-mapping Pi-hole {
                    ip-address 192.168.2.20
                    mac-address 02:42:
                }
            }
        }
        static-arp disable
        use-dnsmasq disable
    }
    dns {
        forwarding {
            cache-size 150
            listen-on switch0
        }
    }
    gui {
        http-port 80
        https-port 443
        older-ciphers enable
    }
    nat {
        rule 5000 {
            description IPTV1
            destination {
                address 185.24.175.0/24
            }
            log disable
            outbound-interface eth0.34
            protocol all
            type masquerade
        }
        rule 5001 {
            description IPTV2
            destination {
                address 185.41.48.0/24
            }
            log disable
            outbound-interface eth0.4
            protocol all
            type masquerade
        }
    }
    ssh {
        port 22
        protocol-version v2
    }
    unms {
        disable
    }
}
system {
    host-name ubnt
    login {
        user ubnt {
            authentication {
                encrypted-password 
            }
            level admin
        }
    }
    name-server 192.168.2.20
    ntp {
        server 0.ubnt.pool.ntp.org {
        }
        server 1.ubnt.pool.ntp.org {
        }
        server 2.ubnt.pool.ntp.org {
        }
        server 3.ubnt.pool.ntp.org {
        }
    }
    offload {
        hwnat disable
        ipsec enable
    }
    syslog {
        global {
            facility all {
                level notice
            }
            facility protocols {
                level debug
            }
        }
    }
    time-zone UTC
}


/* Warning: Do not remove the following line. */
/* === vyatta-config-version: "config-management@1:conntrack@1:cron@1:dhcp-relay@1:dhcp-server@4:firewall@5:ipsec@5:nat@3:qos@1:quagga@2:suspend@1:system@4:ubnt-pptp@1:ubnt-udapi-server@1:ubnt-unms@1:ubnt-util@1:vrrp@1:webgui@1:webproxy@1:zone-policy@1" === */
/* Release version: v1.10.8.5142457.181120.1809 */