TPlink ER605V1 as vlan aware switch

I'm new to really trying to dig in, understand and configure a network beyond what a savvy consumer can do.
I'd like to segment my network and have the ability to start managing it as I learn.

I have 2 TP-link ER-605 V1 switches. They appear to be running some version of openwrt. I'm thinking I'll dumb them down to an aware switch, and use my upstream (more capable?) router to do all the work (which I'm sure will be its own deep learning thread).

I've already physically segmented my network, and would like to setup these ER-605s as was done in this thread: https://forum.openwrt.org/t/turn-router-into-vlan-aware-switch-only/184914/65

Every time I edit the network, DHCP and firewall files, it restarts with overwriting them. I'm assuming this version has some start-up script or service that is overwriting me or is there some basic steps I'm ignorantly missing?

FYI:

root@ER605:~# ubus call system board
{
        "kernel": "3.10.108",
        "hostname": "ER605",
        "system": "MT7621",
        "model": "mtk-apsoc-demo",
        "release": {
                "distribution": "OpenWrt",
                "version": "Barrier Breaker",
                "revision": "unknown",
                "codename": "barrier_breaker",
                "target": "ramips\/generic",
                "description": "OpenWrt Barrier Breaker 14.07"
        }
}

ER605v1 isn't support by Openwrt, v2 is.


It appears you are using firmware that is not from the official OpenWrt project.

When using forks/offshoots/vendor-specific builds that are "based on OpenWrt", there may be many differences compared to the official versions (hosted by OpenWrt.org). Some of these customizations may fundamentally change the way that OpenWrt works. You might need help from people with specific/specialized knowledge about the firmware you are using, so it is possible that advice you get here may not be useful.

You may find that the best options are:

  1. Install an official version of OpenWrt, if your device is supported (see https://firmware-selector.openwrt.org).
  2. Ask for help from the maintainer(s) or user community of the specific firmware that you are using.
  3. Provide the source code for the firmware so that users on this forum can understand how your firmware works (OpenWrt forum users are volunteers, so somebody might look at the code if they have time and are interested in your issue).

If you believe that this specific issue is common to generic/official OpenWrt and/or the maintainers of your build have indicated as such, please feel free to clarify.

This device is indeed running "some version" -- but that version is a highly customized fork based on an ancient (2014 -- that's a decade old) version of OpenWrt. The official version itself is very long since EOL and unsupported by the OpenWrt project, but this specific fork is theoretically maintained by TP-Link.

Now, a few other things:

  1. The ER-605v1 is not supported by the official OpenWrt project at all. So you cannot install a modern version of OpenWrt -- you'll need to work with the vendor firmware and its management methods (Omada and/or a web interface, IIRC).
  2. If I'm not mistaken, at least some of the ports on this device are connected to the processor directly without connecting to a switch first. I don't know the internal architecture of the device, but any ports not connected to a hardware switch chip will not be very useful as a switch because they need to pass through the processor and will likely be limited to ~250Mbps throughput. Therefore, you'll probably get better results if you pick up even a basic managed switch (although I recommend avoiding the very entry level TL-SG1xxE devices and the equivalent from Netgear).

You'll have to ask TP-Link. This device is entirely unsupportable here.

1 Like

Thank you both for the replies! I see that ports 0-4 can be configured for WAN/LAN in stock firmware maybe that implies that they are connected to a switch. Port 5 is LAN only, possibly this is a directly connected port, best suited for management?
Rather than investing the time in trying to learn more linux that I may be capable of, I will probably hook up to the UART pins, try to follow the boot sequence and figure out how to implement a trunk and port vlans.

I was hoping to use these paperweights as they have more ports, maybe if I can get a basic config to stick. Once I have some idea of what I'm doing in openWRT, maybe I can justify buying a ~$200 device.
For now, I have couple GL iNet routers I believe are fully functional versions of openwrt I can learn on.

Good morning. I hope someone is willing to humor me in my ignorant learning endeavor.
One thing I mentioned earlier was that my config changes would not "stick", it does help if I use uci to commit the changes and init.d to restart the network.
(I haven't fully absorbed this, but it's the right stuff to be reading...) Openwrt Guide uci
I needed a little push to better comprehend some vlan basics., so I played around with the web interface, creating vlans on ports 1-4 and manipulating tagged/untagged and pvids and observing the changes to the /etc/config files.

I think I have enough understanding to create a port with tagged vlans on it that go back to my glinet router where I can setup the vlan routing (will be another learning curve) and multiple untagged ports with the desired vlan as the pvid so that non-vlan aware devices are put on the right network.
This config demonstrates with a GLinet router serving up dhcp on a tagged vlan to port 1 of this ER05, I can connect to port 2 and recieve an IP from the GLinet on my untaged NIC and another address on my tagged NIC.
Connecting to port 4 I still get the vlan100 ip from the glinet on the untagged NIC and a ER505 vlan10 IP on my tagged nic.

Is it possible to assign port 0 of the switch to the lan rather than wan so I can use it? Also, should I make it a trunk? Do I need to make some virtual interface to keep the rest of the ER605 happy while I use the switch as a vlan switch?

My current config while testing (sticks, lol):


config interface_mode 'global'
	option switch_enable '1'
	option singlewan '0'
	option wan_ifname 'eth1.4094|eth1.4093|eth1.4092|eth1.4091'
	option lan_ifname 'eth0.1|eth0.1|eth0.1|eth0.1'
	option lan_device 'eth0'
	option wan_device 'eth1'
	option wanmode '1'
	option wan_numbers '1'

config t_has_switch 'switch'
	option lan_vlan_id '1|1|1|1'
	option wan_vlan_id '4094|4093|4092|4091'
	option lan_ports_value '2 3 4 5|3 4 5|4 5|5'
	option wan_ports_value '1|1 2|1 2 3|1 2 3 4'
	option lan_cpu_port '6'
	option wan_cpu_port '5'

config interface 'wan1_eth'
	option t_type 'physical'
	option t_name 'wan1_eth'
	option t_issys '1'
	option t_reference '0'
	option dbroadcast '1'
	option reqopts '33 121 249'
	option uplink '1000000'
	option downlink '1000000'
	option macaddr '4D:41:43:BB:BB:BB'
	option t_factory_mac '4D:41:43:BB:BB:BB'
	option mtu '1500'
	option t_dhcp_mtu '1500'
	option peerdns '1'
	option proto 'dhcp'
	option ifname 'eth1.4094'

config interface 'pseudo_wan1_eth'
	option proto 'none'
	option parent 'wan1_eth'
	option ipaddr '168.254.83.253'
	option netmask '255.255.255.255'

config interface 'wan1_poe'
	option t_bindif 'eth1'
	option metric '0'
	option t_name 'wan1_poe'
	option lcpechofailure '5'
	option auto '0'
	option peerdns '1'
	option t_linktype 'auto'
	option t_reference '0'
	option mru '1492'
	option t_type 'pppoe'
	option lcpechointerval '10'
	option t_issys '0'
	option t_poe_enable '0'
	option parent 'wan1_eth'
	option uplink '1000000'
	option downlink '1000000'
	option conn_mode '0'
	option conn_start '0'
	option conn_interval '0'
	option redail '0'

config interface 'wan2_eth'
	option t_type 'physical'
	option t_name 'wan2_eth'
	option t_issys '1'
	option t_reference '0'
	option dbroadcast '1'
	option reqopts '33 121 249'
	option uplink '1000000'
	option downlink '1000000'
	option macaddr '4D:41:43:CC:CC:CC'
	option t_factory_mac '4D:41:43:CC:CC:CC'
	option mtu '1500'
	option t_dhcp_mtu '1500'
	option peerdns '1'
	option proto 'none'

config interface 'pseudo_wan2_eth'
	option proto 'none'
	option parent 'wan2_eth'
	option ipaddr '168.254.83.253'
	option netmask '255.255.255.255'

config interface 'wan2_poe'
	option t_bindif 'eth1'
	option metric '0'
	option t_name 'wan2_poe'
	option lcpechofailure '5'
	option auto '0'
	option peerdns '1'
	option t_linktype 'auto'
	option t_reference '0'
	option mru '1492'
	option t_type 'pppoe'
	option lcpechointerval '10'
	option t_issys '0'
	option t_poe_enable '0'
	option parent 'wan2_eth'
	option uplink '1000000'
	option downlink '1000000'
	option conn_mode '0'
	option conn_start '0'
	option conn_interval '0'
	option redail '0'

config interface 'wan3_eth'
	option t_type 'physical'
	option t_name 'wan3_eth'
	option t_issys '1'
	option t_reference '0'
	option dbroadcast '1'
	option reqopts '33 121 249'
	option uplink '1000000'
	option downlink '1000000'
	option macaddr '4D:41:43:DD:DD:DD'
	option t_factory_mac '4D:41:43:DD:DD:DD'
	option proto 'none'

config interface 'pseudo_wan3_eth'
	option proto 'none'
	option parent 'wan3_eth'
	option ipaddr '168.254.83.253'
	option netmask '255.255.255.255'

config interface 'wan3_poe'
	option t_bindif 'eth1'
	option metric '0'
	option t_name 'wan3_poe'
	option lcpechofailure '5'
	option auto '0'
	option peerdns '1'
	option t_linktype 'auto'
	option t_reference '0'
	option mru '1492'
	option t_type 'pppoe'
	option lcpechointerval '10'
	option t_issys '0'
	option t_poe_enable '0'
	option parent 'wan3_eth'
	option uplink '1000000'
	option downlink '1000000'
	option conn_mode '0'
	option conn_start '0'
	option conn_interval '0'
	option redail '0'

config interface 'wan4_eth'
	option t_type 'physical'
	option t_name 'wan4_eth'
	option t_issys '1'
	option t_reference '0'
	option dbroadcast '1'
	option reqopts '33 121 249'
	option uplink '1000000'
	option downlink '1000000'
	option macaddr '4D:41:43:EE:EE:EE'
	option t_factory_mac '4D:41:43:EE:EE:EE'
	option proto 'none'

config interface 'pseudo_wan4_eth'
	option proto 'none'
	option parent 'wan4_eth'
	option ipaddr '168.254.83.253'
	option netmask '255.255.255.255'

config interface 'wan4_poe'
	option t_bindif 'eth1'
	option metric '0'
	option t_name 'wan4_poe'
	option lcpechofailure '5'
	option auto '0'
	option peerdns '1'
	option t_linktype 'auto'
	option t_reference '0'
	option mru '1492'
	option t_type 'pppoe'
	option lcpechointerval '10'
	option t_issys '0'
	option t_poe_enable '0'
	option parent 'wan4_eth'
	option uplink '1000000'
	option downlink '1000000'
	option conn_mode '0'
	option conn_start '0'
	option conn_interval '0'
	option redail '0'

config interface 'lan'
	option t_type 'physical'
	option t_name 'lan'
	option t_issys '1'
	option t_reference '0'
	option proto 'static'
	option type 'bridge'
	option ifname 'veth0'
	option ipaddr '169.254.11.21'
	option ippeer '169.254.11.22'
	option netmask '255.255.255.252'
	option macaddr '4D:41:43:AA:AA:AA'
	option t_factory_mac '4D:41:43:AA:AA:AA'

config interface 'loopback'
	option ipaddr '127.0.0.1'
	option proto 'static'
	option netmask '255.0.0.0'
	option ifname 'lo'


config switch 'switch0'
	option name 'switch0'
	option reset '1'
	option enable_vlan '1'
	option port_map '6 5 0 1 2 3 4'

config switch_port 'port0'
	option port '0'
	option device 'switch0'
	option type 'general'
	option logical '1'
	option tag '1'
	option pvid '4094'

config switch_port 'port1'
	option port '1'
	option device 'switch0'
	option type 'general'
	option logical '2'
	option tag '1'
	option pvid '10'

config switch_port 'port2'
	option port '2'
	option device 'switch0'
	option type 'general'
	option logical '3'
	option tag '1'
	option pvid '100'

config switch_port 'port3'
	option port '3'
	option device 'switch0'
	option type 'general'
	option logical '4'
	option tag '1'
	option pvid '10'

config switch_port 'port4'
	option port '4'
	option device 'switch0'
	option type 'general'
	option logical '5'
	option tag '1'
	option pvid '10'

config switch_port 'port5'
	option port '5'
	option device 'switch0'
	option type 'trunk'
	option tag 't'
	option pvid '0'

config switch_port 'port6'
	option port '6'
	option device 'switch0'
	option type 'trunk'
	option tag 't'
	option pvid '10'

config switch_vlan 'vlan0'
	option device 'switch0'
	option vlan '0'
	option name 'vlan0'
	option users 'system'

config switch_vlan 'vlan4094'
	option device 'switch0'
	option vlan '4094'
	option name 'vlan4094'
	option ports '0 5t'
	option users 'wan'

config switch_vlan 'vlan10'
	option device 'switch0'
	option vlan '10'
	option name 'vlan10'
	option prio '0'
	option users 'lan'
	option ports '1t 4t 2t 3t 6t'
	option desc 'ER605'

config switch_vlan 'vlan100'
	option device 'switch0'
	option vlan '100'
	option name 'vlan100'
	option users 'web'
	option ports '1t 4t 2t 3t'
	option desc 'GLinet'


config network 'global'
	option need_restart 'on'

config port 'mirror'
	option state 'off'
	option mode 'both'
	option mirrorport '5'
	option mirroredports '1'

config port 'port1'
	option port_state 'on'
	option flowcontrol 'off'
	option negotiation_mode 'auto'
	option ingress_state 'off'
	option ingress_mode 'all'
	option ingress_rate '1000'
	option egress_state 'off'
	option egress_rate '1000'
	option switch_dev 'switch0'
	option phy_index '0'
	option port_id '0'
	option pvlan_id '7'

config port 'port2'
	option port_state 'on'
	option flowcontrol 'off'
	option negotiation_mode 'auto'
	option ingress_state 'off'
	option ingress_mode 'all'
	option ingress_rate '1000'
	option egress_state 'off'
	option egress_rate '1000'
	option switch_dev 'switch0'
	option phy_index '1'
	option port_id '1'
	option pvlan_id '1'

config port 'port3'
	option port_state 'on'
	option flowcontrol 'off'
	option negotiation_mode 'auto'
	option ingress_state 'off'
	option ingress_mode 'all'
	option ingress_rate '1000'
	option egress_state 'off'
	option egress_rate '1000'
	option switch_dev 'switch0'
	option phy_index '2'
	option port_id '2'
	option pvlan_id '1'

config port 'port4'
	option port_state 'on'
	option flowcontrol 'off'
	option negotiation_mode 'auto'
	option ingress_state 'off'
	option ingress_mode 'all'
	option ingress_rate '1000'
	option egress_state 'off'
	option egress_rate '1000'
	option switch_dev 'switch0'
	option phy_index '3'
	option port_id '3'
	option pvlan_id '1'

config port 'port5'
	option port_state 'on'
	option flowcontrol 'off'
	option negotiation_mode 'auto'
	option ingress_state 'off'
	option ingress_mode 'all'
	option ingress_rate '1000'
	option egress_state 'off'
	option egress_rate '1000'
	option pvlan_id '1'
	option switch_dev 'switch0'
	option phy_index '4'
	option port_id '4'

config led_set 'led_set'
	option enable 'on'


config vinterface 'vwan'
	option ifname 'veth1'
	option ipaddr '169.254.11.22'
	option ippeer '169.254.11.21'
	option netmask '255.255.255.252'

config vinterface 'NETWORK10'
	option ifname 'eth0.10'
	option netmask '255.255.255.0'
	option dhcp_end '192.168.10.199'
	option vlanid '10'
	option cid '1'
	option dhcp_on '1'
	option dhcp_guard_enable '0'
	option system '1'
	option name 'LAN'
	option ipaddr '192.168.10.1'
	option igmp_snooping '1'
	option ports '2 3 4 5'
	option dhcp_dnsmode 'manual'
	option zone 'LAN10'
	option dhcp_dns '0.0.0.0'
	option dhcp_release_time '120m'
	option ipv6_on '0'
	option dhcp_start '192.168.10.100'
	option dhcp_gateway '192.168.10.1'

What I think I can change to make port 0 available (I feel like I need to make some changes in Network also, and could delete the multi wan interfaces)


config switch 'switch0'
	option name 'switch0'
	option reset '1'
	option enable_vlan '1'
	option port_map '6 5 0 1 2 3 4'

config switch_port 'port0'
	option port '0'
	option device 'switch0'
	option type 'general'
	option logical '1'
	option tag 't'
	option pvid '10'

config switch_port 'port1'
	option port '1'
	option device 'switch0'
	option type 'general'
	option logical '2'
	option tag '1'
	option pvid '10'

config switch_port 'port2'
	option port '2'
	option device 'switch0'
	option type 'general'
	option logical '3'
	option tag '1'
	option pvid '100'

config switch_port 'port3'
	option port '3'
	option device 'switch0'
	option type 'general'
	option logical '4'
	option tag '1'
	option pvid '10'

config switch_port 'port4'
	option port '4'
	option device 'switch0'
	option type 'general'
	option logical '5'
	option tag '1'
	option pvid '10'

config switch_port 'port5'
	option port '5'
	option device 'switch0'
	option type 'trunk'
	option tag 't'
	option pvid '0'

config switch_port 'port6'
	option port '6'
	option device 'switch0'
	option type 'trunk'
	option tag 't'
	option pvid '10'

config switch_vlan 'vlan0'
	option device 'switch0'
	option vlan '0'
	option name 'vlan0'
	option users 'system'

config switch_vlan 'vlan4094'
	option device 'switch0'
	option vlan '4094'
	option name 'vlan4094'
	option ports '5t'
	option users 'wan'

config switch_vlan 'vlan10'
	option device 'switch0'
	option vlan '10'
	option name 'vlan10'
	option prio '0'
	option users 'lan'
	option ports '0t 1t 4t 2t 3t 6t'
	option desc 'ER605'

config switch_vlan 'vlan100'
	option device 'switch0'
	option vlan '100'
	option name 'vlan100'
	option users 'web'
	option ports '0t 1t 4t 2t 3t'
	option desc 'GLinet'


config network 'global'
	option need_restart 'on'

config port 'mirror'
	option state 'off'
	option mode 'both'
	option mirrorport '5'
	option mirroredports '1'

config port 'port1'
	option port_state 'on'
	option flowcontrol 'off'
	option negotiation_mode 'auto'
	option ingress_state 'off'
	option ingress_mode 'all'
	option ingress_rate '1000'
	option egress_state 'off'
	option egress_rate '1000'
	option switch_dev 'switch0'
	option phy_index '0'
	option port_id '0'
	option pvlan_id '1'

config port 'port2'
	option port_state 'on'
	option flowcontrol 'off'
	option negotiation_mode 'auto'
	option ingress_state 'off'
	option ingress_mode 'all'
	option ingress_rate '1000'
	option egress_state 'off'
	option egress_rate '1000'
	option switch_dev 'switch0'
	option phy_index '1'
	option port_id '1'
	option pvlan_id '1'

config port 'port3'
	option port_state 'on'
	option flowcontrol 'off'
	option negotiation_mode 'auto'
	option ingress_state 'off'
	option ingress_mode 'all'
	option ingress_rate '1000'
	option egress_state 'off'
	option egress_rate '1000'
	option switch_dev 'switch0'
	option phy_index '2'
	option port_id '2'
	option pvlan_id '1'

config port 'port4'
	option port_state 'on'
	option flowcontrol 'off'
	option negotiation_mode 'auto'
	option ingress_state 'off'
	option ingress_mode 'all'
	option ingress_rate '1000'
	option egress_state 'off'
	option egress_rate '1000'
	option switch_dev 'switch0'
	option phy_index '3'
	option port_id '3'
	option pvlan_id '1'

config port 'port5'
	option port_state 'on'
	option flowcontrol 'off'
	option negotiation_mode 'auto'
	option ingress_state 'off'
	option ingress_mode 'all'
	option ingress_rate '1000'
	option egress_state 'off'
	option egress_rate '1000'
	option pvlan_id '1'
	option switch_dev 'switch0'
	option phy_index '4'
	option port_id '4'

config led_set 'led_set'
	option enable 'on'

As we discussed earlier, the ER605v1 is not supported by the official OpenWrt project. It uses a very heavily modified vendor fork (created and maintained by TP-Link) that was branched off an ancient version of OpenWrt. That version is so old as to be unsupportable here in general (since the syntax and theory of operation is so different relative to modern versions), but even more importantly is that the vendor has made such significant modifications as to make it a true black-box to us. We don't have any knowledge about how it is supposed to work and what changes they made in the process.

As such, your options are:

  1. Ask TP-Link for help (and/or forums that are dedicated to their products with the vendor firmware installed)
  2. Work with the web UI and/or Omada software controller to see if it is possible to configure the device as you desire
  3. Use a purpose built managed switch (or a multi-port router that has a built-in switch and is properly supported by the official OpenWrt project).

Thanks for your patience. I didn't give enough credit to how much different the syntax and "structure" of the way it functions being different than modern builds.

I just saw people intimately knowledgeable with the types of configuration I was looking to setup and hoped for some informed direction. Which you gave me: get a supported switch, because learning the ancient customized mess will take more time that it's worth, because it's not really valuable knowledge and applicable to other devices.

I'll keep tinkering, just trying to dumb it down to a switch, and come back with a relevant thread when I need to configure the main router to handle all the vlans.

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.