PPPoE Failover Issues with MikroTik

Overview:
I’m facing a challenge with PPPoE failover in my current network setup. Here’s the configuration and the issues I’m encountering:

Network Setup:

Devices:

• Router 1: TP-Link connected via DSL cable From Orange ISP (Ether1 on MikroTik)

• Router 2: TP-Link connected via DSL cable From Vodafone ISP (Ether2 on MikroTik)

Configuration:

• PPPoE: Configured on each TP-Link router for their respective ISPs

• DHCP and WLAN: Disabled on both TP-Link routers

• DMZ: Enabled on both TP-Link routers to slave them to the MikroTik router

IP Assignments:

• ether1-Orange Line: 192.168.1.3 on Mikrotik

• ether2-Vodafone Line: 192.168.0.3 on Mikrotik

• Load Balancing: Configured using PCC on MikroTik

• Failover: The current failover only works when manually disconnecting or disabling an interface

Problem Description:
The primary issue is with the failover mechanism. It fails to detect PPPoE disconnections from the ISP directly. The failover only works if I manually unplug the Ethernet cable or disable the interface on the MikroTik router. This leads to Internet outages even if one of the ISPs is still up.

Need Help With:

• Automated PPPoE Failover: Looking for a way to automatically detect PPPoE outages and switch to the other line.

• Reliable Failover Configuration: Ensuring uninterrupted internet connectivity in case of an ISP failure.

Network Map:
https://ibb.co/gFM7QSy

Exported Configuration:

# 2024-05-03 17:18:16 by RouterOS 7.14.1
# model = RBD53iG-5HacD2HnD
/interface bridge
add add-dhcp-option82=yes dhcp-snooping=yes fast-forward=no igmp-snooping=yes \
    name=bridge1 port-cost-mode=short
/interface ethernet
set [ find default-name=ether1 ] comment=Orange-Line-Interface name=\
    ether1-Orange
set [ find default-name=ether2 ] comment=Vodafone-Line-Interface name=\
    ether2-Vodafone
/interface wireless
set [ find default-name=wlan1 ] ssid=MikroTik
set [ find default-name=wlan2 ] ssid=MikroTik
/interface list
add name=WAN
add name=LAN
/interface wireless security-profiles
set [ find default=yes ] supplicant-identity=MikroTik
/ip pool
add name=POOL1 ranges=192.168.55.2-192.168.55.254
/ip dhcp-server
add address-pool=POOL1 interface=bridge1 lease-time=1h name=DHCP
/ip smb users
set [ find default=yes ] disabled=yes
/routing table
add disabled=no fib name=Vodafone-Line
add disabled=no fib name=Orange-Line
/interface bridge port
add bridge=bridge1 interface=ether5 internal-path-cost=10 path-cost=10
add bridge=bridge1 interface=wlan1 internal-path-cost=10 path-cost=10
add bridge=bridge1 interface=wlan2 internal-path-cost=10 path-cost=10
/interface list member
add interface=bridge1 list=LAN
add interface=ether1-Orange list=WAN
add interface=ether2-Vodafone list=WAN
/ip address
add address=192.168.1.3/24 interface=ether1-Orange network=192.168.1.0
add address=192.168.55.1/24 interface=bridge1 network=192.168.55.0
add address=192.168.0.3/24 interface=ether2- Vodafone network=192.168.0.0
/ip cloud
set ddns-enabled=yes
/ip dns
set servers=192.168.55.1,8.8.8.8,8.8.4.4
/ip firewall mangle
add action=accept chain=prerouting dst-address=192.168.1.0/24 in-interface=\
    bridge1
add action=accept chain=prerouting dst-address=192.168.0.0/24 in-interface=\
    bridge1
add action=accept chain=prerouting dst-address=192.168.55.0/24 in-interface=\
    bridge1
add action=mark-connection chain=prerouting connection-mark=no-mark \
    connection-state=new in-interface=ether1-Orange new-connection-mark=\
    ISP1-conn passthrough=yes
add action=mark-connection chain=prerouting connection-mark=no-mark \
    connection-state=new in-interface=ether2-Vodafone new-connection-mark=\
    ISP2-conn passthrough=yes
add action=mark-routing chain=output connection-mark=ISP1-conn \
    new-routing-mark=Orange-Line passthrough=yes
add action=mark-routing chain=output connection-mark=ISP2-conn \
    new-routing-mark=Vodafone-Line passthrough=yes
add action=mark-connection chain=prerouting connection-mark=no-mark \
    connection-state=new dst-address-type=!local hotspot=auth in-interface=\
    bridge1 new-connection-mark=ISP1-conn passthrough=yes \
 per-connection-classifier=src-address-and-port:2/0
add action=mark-connection chain=prerouting connection-mark=no-mark \
    connection-state=new dst-address-type=!local hotspot=auth in-interface=\
    bridge1 new-connection-mark=ISP2-conn passthrough=yes \
    per-connection-classifier=src-address-and-port:2/1
add action=mark-routing chain=prerouting connection-mark=ISP1-conn \
    in-interface=bridge1 new-routing-mark=Orange-Line passthrough=yes
add action=mark-routing chain=prerouting connection-mark=ISP2-conn hotspot=\
    auth in-interface=bridge1 new-routing-mark=Vodafone-Line passthrough=yes
/ip firewall nat
add action=masquerade chain=srcnat comment=Orange-masquerade out-interface=\
    ether1-Orange
add action=masquerade chain=srcnat comment=Vodafone-masquerade out-interface=\
    ether2-Vodafone
/ip route
add check-gateway=ping disabled=no distance=1 dst-address=0.0.0.0/0 gateway=\
    192.168.1.1 pref-src="" routing-table=main scope=30 suppress-hw-offload=\
    no target-scope=10
add check-gateway=ping disabled=no distance=2 dst-address=0.0.0.0/0 gateway=\
    192.168.0.1 pref-src="" routing-table=main scope=30 suppress-hw-offload=\
    no target-scope=10
add check-gateway=ping disabled=no distance=1 dst-address=0.0.0.0/0 gateway=\
    192.168.1.1 pref-src="" routing-table=Orange-Line scope=30 \
    suppress-hw-offload=no target-scope=10
add check-gateway=ping disabled=no distance=1 dst-address=0.0.0.0/0 gateway=\
    192.168.0.1 pref-src="" routing-table=Vodafone-Line scope=30 \
    suppress-hw-offload=no target-scope=10

Any guidance on improving my setup would be greatly appreciated.
Computer-Network-Diagram.png