Mwan3 + modem without vlan

Hello,

So, I have two different modems to load balance.

One which has VLAN and is working fine but the other interface won't establish connection and I believe it is because the modem has no VLAN configuration yet I cannot replace the modem due to finicky ISP.

Anyway this can be achieved?

It would help to show a diagram of the modems, the router, the connections, and the vlans involved.
Before configuring mwan3 to load balance or failover connections, it is important to have working connections with different metrics.
Also please copy the output of the following commands and post it here using the "Preformatted text </> " button:
grafik
Remember to redact passwords, MAC addresses and any public IP addresses you may have

ubus call system board; \
uci export network; uci export dhcp; uci export firewall; \
head -n -0 /etc/firewall.user; \
ip -4 addr ; ip -4 ro li tab all ; ip -4 ru
1 Like

Arris TG1692A is the modem model, it's configured as bridge with DHCP enabled for WAN and LAN but there is no VLAN configuration.

On the router, I've tried the interface as PPPoE and DHCP but could not stablish connection as either.

wan_net is the interface that is not connecting.
wan6 is the interface to the other modem.

Edit: Removed mistaken information.

{
        "kernel": "4.14.180",
        "hostname": "yggdrasil",
        "system": "Qualcomm Atheros QCA9558 ver 1 rev 0",
        "model": "TP-Link Archer C7 v2",
        "board_name": "tplink,archer-c7-v2",
        "release": {
                "distribution": "OpenWrt",
                "version": "19.07.3",
                "revision": "r11063-85e04e9f46",
                "target": "ath79/generic",
                "description": "OpenWrt 19.07.3 r11063-85e04e9f46"
        }
}
package network

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

config globals 'globals'
        option ula_prefix 'fd1d:fefe:8a1b::/48'

config interface 'lan'
        option type 'bridge'
        option proto 'static'
        option ipaddr '192.168.1.1'
        option netmask '255.255.255.0'
        option ip6assign '60'
        list dns '1.1.1.1'
        option ifname 'eth1.1'
        option igmp_snooping '1'

config interface 'wan6'
        option ifname 'eth0.100'
        option proto 'pppoe'
        option password 'guest'
        option ipv6 'auto'
        option username 'guest'

config switch
        option name 'switch0'
        option reset '1'
        option enable_vlan '1'

config switch_vlan
        option device 'switch0'
        option vlan '1'
        option vid '1'
        option ports '0t 2 3 4'

config switch_vlan
        option device 'switch0'
        option vlan '2'
        option vid '100'
        option ports '6t 1'

config switch_vlan
        option device 'switch0'
        option vlan '3'
        option vid '3'
        option ports '6t 5'

config interface 'wan_net'
        option ifname 'eth0.3'
        option proto 'dhcp'
package dhcp

config dnsmasq
        option localise_queries '1'
        option rebind_protection '1'
        option rebind_localhost '1'
        option local '/lan/'
        option expandhosts '1'
        option leasefile '/tmp/dhcp.leases'
        option resolvfile '/tmp/resolv.conf.auto'
        option domain 'pantheon'
        option localservice '1'
        list server '1.1.1.1'
        option authoritative '1'
        option domainneeded '1'
        option readethers '1'

config dhcp 'lan'
        option interface 'lan'
        option dhcpv6 'server'
        option ra 'server'
        option ra_management '1'
        option start '100'
        option leasetime '12h'
        option limit '150'
        option netmask '255.255.255.0'

config dhcp 'wan'
        option interface 'wan'
        option ignore '1'

config odhcpd 'odhcpd'
        option maindhcp '0'
        option leasefile '/tmp/hosts/odhcpd'
        option leasetrigger '/usr/sbin/odhcpd-update'
        option loglevel '4'

config domain
        option name 'thoth'
        option ip '192.168.1.10'

config domain
        option name 'atlas'
        option ip '192.168.1.180'

config host
        option name 'thoth'
        option dns '1'
        option mac ''
        option ip '192.168.1.10'
        option leasetime '999999999999999999'

config host
        option name 'atlas'
        option dns '1'
        option mac ''
        option ip '192.168.1.180'
        option leasetime '999999999999999999999999999999999999999999'
        option duid ''
        option hostid ''

config domain
        option name 'coreelec'
        option ip '192.168.1.128'

config host
        option name 'coreelec'
        option dns '1'
        option mac ''
        option ip '192.168.1.128'
        option leasetime '999999999999999999999999999999999999999999999999999999999999999999'

config host
        option mac ''
        option leasetime '99999999999999999999999999999999999'
        option dns '1'
        option name 'Rafaels-MBP'
        option ip '192.168.1.136'

config host
        option mac ''
        option leasetime '999999999999999999999999999'
        option dns '1'
        option name 'commlink'
        option ip '192.168.1.115'

config domain
        option name 'tim.router'
        option ip '192.168.1.100'
package firewall

config rule
        option name 'Allow-DHCP-Renew'
        option src 'wan'
        option proto 'udp'
        option dest_port '68'
        option target 'ACCEPT'
        option family 'ipv4'

config rule
        option name 'Allow-Ping'
        option src 'wan'
        option proto 'icmp'
        option icmp_type 'echo-request'
        option family 'ipv4'
        option target 'ACCEPT'

config rule
        option name 'Allow-IGMP'
        option src 'wan'
        option proto 'igmp'
        option family 'ipv4'
        option target 'ACCEPT'

config rule
        option name 'Allow-DHCPv6'
        option src 'wan'
        option proto 'udp'
        option src_ip 'fc00::/6'
        option dest_ip 'fc00::/6'
        option dest_port '546'
        option family 'ipv6'
        option target 'ACCEPT'

config rule
        option name 'Allow-MLD'
        option src 'wan'
        option proto 'icmp'
        option src_ip 'fe80::/10'
        list icmp_type '130/0'
        list icmp_type '131/0'
        list icmp_type '132/0'
        list icmp_type '143/0'
        option family 'ipv6'
        option target 'ACCEPT'

config rule
        option name 'Allow-ICMPv6-Input'
        option src 'wan'
        option proto 'icmp'
        list icmp_type 'echo-request'
        list icmp_type 'echo-reply'
        list icmp_type 'destination-unreachable'
        list icmp_type 'packet-too-big'
        list icmp_type 'time-exceeded'
        list icmp_type 'bad-header'
        list icmp_type 'unknown-header-type'
        list icmp_type 'router-solicitation'
        list icmp_type 'neighbour-solicitation'
        list icmp_type 'router-advertisement'
        list icmp_type 'neighbour-advertisement'
        option limit '1000/sec''
        option family 'ipv6'9999999999999999'
        option target 'ACCEPT'
config host
config ruleion name 'atlas'
        option name 'Allow-ICMPv6-Forward'
        option src 'wan'D:A1:B9:67:8A'
        option dest '*'168.1.180'
        option proto 'icmp'99999999999999999999999999999999999999999'
        list icmp_type 'echo-request'2cfda1b9678a'
        list icmp_type 'echo-reply'1b::180/128'
        list icmp_type 'destination-unreachable'
config dlist icmp_type 'packet-too-big'
        list icmp_type 'time-exceeded'
        list icmp_type 'bad-header'
        list icmp_type 'unknown-header-type'
config hoption limit '1000/sec'
        option family 'ipv6'c'
        option target 'ACCEPT'
        option mac ''
config ruleion ip '192.168.1.128'
        option name 'Allow-IPSec-ESP'9999999999999999999999999999999999999999999999999999999'
        option src 'wan'
config hoption dest 'lan'
        option proto 'esp'60:DD:41:A3'
        option target 'ACCEPT'9999999999999999999999999999999'
        option dns '1'
config ruleion name 'Rafaels-MBP'
        option name 'Allow-ISAKMP'
        option src 'wan'
config hoption dest 'lan'
        option dest_port '500'C:AA:A1'
        option proto 'udp'999999999999999999999999999'
        option target 'ACCEPT'
        option name 'commlink'
config defaultsip '192.168.1.115'
        option syn_flood '1'
config doption input 'ACCEPT'
        option output 'ACCEPT'r'
        option forward 'ACCEPT'0'

config zonesil:~# clear
        option name 'lan'
        option input 'ACCEPT'
        option output 'ACCEPT'
        option forward 'ACCEPT'
        option network 'lan'

config zone
        option name 'wan'
        option output 'ACCEPT'
        option masq '1'
        option mtu_fix '1'
        option input 'REJECT'
        option forward 'REJECT'
        option network 'wan_net wan6'

config include
        option path '/etc/firewall.user'

config redirect
        option target 'DNAT'
        option src 'wan'
        option dest 'lan'
        option src_dport '51413'
        option dest_ip '192.168.1.10'
        option dest_port '51413'
        option proto 'tcp'
        option name 'Server'

config redirect
        option target 'DNAT'
        option src 'wan'
        option dest 'lan'
        option proto 'udp'
        option src_dport '51820'
        option dest_ip '192.168.1.10'
        option dest_port '51820'
        option name 'Server'

config forwarding
        option dest 'wan'
        option src 'lan'

config redirect
        option target 'DNAT'
        option src 'wan'
        option dest 'lan'
        option proto 'tcp'
        option dest_ip '192.168.1.10'
        option dest_port '8920'
        option name 'Server'
        option src_dport '443'

config redirect
        option target 'DNAT'
        option src 'wan'
        option dest 'lan'
        option proto 'tcp'
        option src_dport '8920'
        option dest_ip '192.168.1.10'
        option dest_port '8920'
        option name 'Server'

config redirect
        option target 'DNAT'
        option src 'wan'
        option dest 'lan'
        option src_dport '8333'
        option dest_ip '192.168.1.10'
        option name 'Server'
        option proto 'tcp'
        option dest_port '18333'
head -n -0 /etc/firewall.user
# This file is interpreted as shell script.
# Put your custom iptables rules here, they will
# be executed with each firewall (re-)start.

# Internal uci firewall chains are flushed and recreated on reload, so
# put custom rules into the root chains e.g. INPUT or FORWARD or into the
# special user chains, e.g. input_wan_rule or postrouting_lan_rule.
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
7: br-lan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    inet 192.168.1.1/24 brd 192.168.1.255 scope global br-lan
       valid_lft forever preferred_lft forever
11: pppoe-wan6: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1492 qdisc fq_codel state UNKNOWN group default qlen 3
    inet removed-ip peer removed-ip/32 scope global pppoe-wan6
       valid_lft forever preferred_lft forever
default via removed-ip dev pppoe-wan6 table 1
removed-ip dev pppoe-wan6 table 1 proto kernel scope link src removed-ip
192.168.1.0/24 dev br-lan table 1 proto kernel scope link src 192.168.1.1
default via removed-ip dev pppoe-wan6 proto static
removed-ip dev pppoe-wan6 proto kernel scope link src removed-ip
192.168.1.0/24 dev br-lan proto kernel scope link src 192.168.1.1
broadcast 127.0.0.0 dev lo table local proto kernel scope link src 127.0.0.1
local 127.0.0.0/8 dev lo table local proto kernel scope host src 127.0.0.1
local 127.0.0.1 dev lo table local proto kernel scope host src 127.0.0.1
broadcast 127.255.255.255 dev lo table local proto kernel scope link src 127.0.0.1
local removed-ip dev pppoe-wan6 table local proto kernel scope host src removed-ip
broadcast 192.168.1.0 dev br-lan table local proto kernel scope link src 192.168.1.1
local 192.168.1.1 dev br-lan table local proto kernel scope host src 192.168.1.1
broadcast 192.168.1.255 dev br-lan table local proto kernel scope link src 192.168.1.1
0:      from all lookup local
1001:   from all iif pppoe-wan6 lookup 1
2001:   from all fwmark 0x100/0x3f00 lookup 1
2061:   from all fwmark 0x3d00/0x3f00 blackhole
2062:   from all fwmark 0x3e00/0x3f00 unreachable
32766:  from all lookup main
32767:  from all lookup default

If you need to tag the frames on the interface you need to declare it. Notice the 1t

If you need to tag the frames on the interface you need to declare it. Notice the 1t

Sorry, I have no idea at all what that means, I'm very much a beginner.

How did you configure them? Did you edit the files with some text editor? Did you use uci commands or did you use the Luci web interface?

I used Luci.

Then on switch configuration for vlan 2 from the drop down list of port1 (might be a different LAN port) select tagged instead of untagged.

If I set vlan 2 to tagged the wan interface doesn't connect to the pppoe modem, only works as untagged. And having both wans as untagged keeps dropping one of the interfaces.

Sorry, wrong interface. If I am not mistaken the one that it is not working is the one with vlan3

Also if you are using a lan port to make this additional wan interface, you should better use the CPU that is assigned to the LAN ports

        option ports '0t 5t'

This one would look more appropriate.

I currently have both wan ports (and yes, one of them was made from a lan port) as untagged and it's working fine.

Both wan interfaces have been online for more than 24h.

option ports '0t 5t'

What exactly would the config suggested above accomplish?

Tag the frames egressing that port.
I was under the impression you needed to tag the frames to make it work.
Anyway since it is working now, all is fine.