i nie wiem czy to dobrze czy nie. cały log wygląda tak (polecenie: sh -x /usr/bin/simplefailover 2>&1 | tee /tmp/sfo.log):
+ uci -q get simplefailover.@simplefailover[0].wan_main
+ WAN1=wan
+ uci -q get simplefailover.@simplefailover[0].wan_backup
+ WAN2=aero2
+ uci -q get simplefailover.@simplefailover[0].host
+ HOST=8.8.4.4
+ uci -q get simplefailover.@simplefailover[0].interval
+ INTERVAL=5
+ . /lib/functions/network.sh
+ network_get_physdev IFNAME wan
+ __network_ifstatus IFNAME wan .device
+ local __tmp
+ [ -z ]
+ ubus call network.interface dump
+ export __NETWORK_CACHE={
"interface": [
{
"interface": "aero2",
"up": false,
"pending": false,
"available": true,
"autostart": false,
"proto": "wwan",
"data": {
}
},
{
"interface": "lan",
"up": true,
"pending": false,
"available": true,
"autostart": true,
"uptime": 3473,
"l3_device": "br-lan",
"proto": "static",
"device": "br-lan",
"updated": [
"addresses"
],
"metric": 0,
"delegation": true,
"ipv4-address": [
{
"address": "192.168.13.13",
"mask": 27
}
],
"ipv6-address": [
],
"ipv6-prefix": [
],
"ipv6-prefix-assignment": [
],
"route": [
],
"dns-server": [
],
"dns-search": [
],
"inactive": {
"ipv4-address": [
],
"ipv6-address": [
],
"route": [
],
"dns-server": [
],
"dns-search": [
]
},
"data": {
}
},
{
"interface": "loopback",
"up": true,
"pending": false,
"available": true,
"autostart": true,
"uptime": 3473,
"l3_device": "lo",
"proto": "static",
"device": "lo",
"updated": [
"addresses"
],
"metric": 0,
"delegation": true,
"ipv4-address": [
{
"address": "127.0.0.1",
"mask": 8
}
],
"ipv6-address": [
],
"ipv6-prefix": [
],
"ipv6-prefix-assignment": [
],
"route": [
],
"dns-server": [
],
"dns-search": [
],
"inactive": {
"ipv4-address": [
],
"ipv6-address": [
],
"route": [
],
"dns-server": [
],
"dns-search": [
]
},
"data": {
}
},
{
"interface": "wan",
"up": true,
"pending": false,
"available": true,
"autostart": true,
"uptime": 3470,
"l3_device": "eth0.2",
"proto": "dhcp",
"device": "eth0.2",
"updated": [
"addresses",
"routes",
"data"
],
"metric": 0,
"delegation": true,
"ipv4-address": [
{
"address": "93.105.xxx.yyy",
"mask": 22
}
],
"ipv6-address": [
],
"ipv6-prefix": [
],
"ipv6-prefix-assignment": [
],
"route": [
{
"target": "93.105.184.1",
"mask": 32,
"nexthop": "0.0.0.0",
"source": "93.105.xxx.yyy\/32"
},
{
"target": "0.0.0.0",
"mask": 0,
"nexthop": "93.105.184.1",
"source": "93.105.xxx.yyy\/32"
}
],
"dns-server": [
"37.8.214.2",
"31.11.202.254"
],
"dns-search": [
"warszawa.vectranet.pl"
],
"inactive": {
"ipv4-address": [
],
"ipv6-address": [
],
"route": [
],
"dns-server": [
],
"dns-search": [
]
},
"data": {
"leasetime": 7200
}
}
]
}
+ jsonfilter -s {
"interface": [
{
"interface": "aero2",
"up": false,
"pending": false,
"available": true,
"autostart": false,
"proto": "wwan",
"data": {
}
},
{
"interface": "lan",
"up": true,
"pending": false,
"available": true,
"autostart": true,
"uptime": 3473,
"l3_device": "br-lan",
"proto": "static",
"device": "br-lan",
"updated": [
"addresses"
],
"metric": 0,
"delegation": true,
"ipv4-address": [
{
"address": "192.168.13.13",
"mask": 27
}
],
"ipv6-address": [
],
"ipv6-prefix": [
],
"ipv6-prefix-assignment": [
],
"route": [
],
"dns-server": [
],
"dns-search": [
],
"inactive": {
"ipv4-address": [
],
"ipv6-address": [
],
"route": [
],
"dns-server": [
],
"dns-search": [
]
},
"data": {
}
},
{
"interface": "loopback",
"up": true,
"pending": false,
"available": true,
"autostart": true,
"uptime": 3473,
"l3_device": "lo",
"proto": "static",
"device": "lo",
"updated": [
"addresses"
],
"metric": 0,
"delegation": true,
"ipv4-address": [
{
"address": "127.0.0.1",
"mask": 8
}
],
"ipv6-address": [
],
"ipv6-prefix": [
],
"ipv6-prefix-assignment": [
],
"route": [
],
"dns-server": [
],
"dns-search": [
],
"inactive": {
"ipv4-address": [
],
"ipv6-address": [
],
"route": [
],
"dns-server": [
],
"dns-search": [
]
},
"data": {
}
},
{
"interface": "wan",
"up": true,
"pending": false,
"available": true,
"autostart": true,
"uptime": 3470,
"l3_device": "eth0.2",
"proto": "dhcp",
"device": "eth0.2",
"updated": [
"addresses",
"routes",
"data"
],
"metric": 0,
"delegation": true,
"ipv4-address": [
{
"address": "93.105.xxx.yyy",
"mask": 22
}
],
"ipv6-address": [
],
"ipv6-prefix": [
],
"ipv6-prefix-assignment": [
],
"route": [
{
"target": "93.105.184.1",
"mask": 32,
"nexthop": "0.0.0.0",
"source": "93.105.xxx.yyy\/32"
},
{
"target": "0.0.0.0",
"mask": 0,
"nexthop": "93.105.184.1",
"source": "93.105.xxx.yyy\/32"
}
],
"dns-server": [
"37.8.214.2",
"31.11.202.254"
],
"dns-search": [
"warszawa.vectranet.pl"
],
"inactive": {
"ipv4-address": [
],
"ipv6-address": [
],
"route": [
],
"dns-server": [
],
"dns-search": [
]
},
"data": {
"leasetime": 7200
}
}
]
} -e IFNAME=@.interface[@.interface='wan'].device
+ __tmp=export IFNAME='eth0.2';
+ [ -z export IFNAME='eth0.2'; ]
+ eval export IFNAME='eth0.2';
+ export IFNAME=eth0.2
+ network_get_gateway GATEWAY wan
+ __network_ifstatus GATEWAY wan .route[@.target='0.0.0.0' && !@.table].nexthop 1
+ local __tmp
+ [ -z {
"interface": [
{
"interface": "aero2",
"up": false,
"pending": false,
"available": true,
"autostart": false,
"proto": "wwan",
"data": {
}
},
{
"interface": "lan",
"up": true,
"pending": false,
"available": true,
"autostart": true,
"uptime": 3473,
"l3_device": "br-lan",
"proto": "static",
"device": "br-lan",
"updated": [
"addresses"
],
"metric": 0,
"delegation": true,
"ipv4-address": [
{
"address": "192.168.13.13",
"mask": 27
}
],
"ipv6-address": [
],
"ipv6-prefix": [
],
"ipv6-prefix-assignment": [
],
"route": [
],
"dns-server": [
],
"dns-search": [
],
"inactive": {
"ipv4-address": [
],
"ipv6-address": [
],
"route": [
],
"dns-server": [
],
"dns-search": [
]
},
"data": {
}
},
{
"interface": "loopback",
"up": true,
"pending": false,
"available": true,
"autostart": true,
"uptime": 3473,
"l3_device": "lo",
"proto": "static",
"device": "lo",
"updated": [
"addresses"
],
"metric": 0,
"delegation": true,
"ipv4-address": [
{
"address": "127.0.0.1",
"mask": 8
}
],
"ipv6-address": [
],
"ipv6-prefix": [
],
"ipv6-prefix-assignment": [
],
"route": [
],
"dns-server": [
],
"dns-search": [
],
"inactive": {
"ipv4-address": [
],
"ipv6-address": [
],
"route": [
],
"dns-server": [
],
"dns-search": [
]
},
"data": {
}
},
{
"interface": "wan",
"up": true,
"pending": false,
"available": true,
"autostart": true,
"uptime": 3470,
"l3_device": "eth0.2",
"proto": "dhcp",
"device": "eth0.2",
"updated": [
"addresses",
"routes",
"data"
],
"metric": 0,
"delegation": true,
"ipv4-address": [
{
"address": "93.105.xxx.yyy",
"mask": 22
}
],
"ipv6-address": [
],
"ipv6-prefix": [
],
"ipv6-prefix-assignment": [
],
"route": [
{
"target": "93.105.184.1",
"mask": 32,
"nexthop": "0.0.0.0",
"source": "93.105.xxx.yyy\/32"
},
{
"target": "0.0.0.0",
"mask": 0,
"nexthop": "93.105.184.1",
"source": "93.105.xxx.yyy\/32"
}
],
"dns-server": [
"37.8.214.2",
"31.11.202.254"
],
"dns-search": [
"warszawa.vectranet.pl"
],
"inactive": {
"ipv4-address": [
],
"ipv6-address": [
],
"route": [
],
"dns-server": [
],
"dns-search": [
]
},
"data": {
"leasetime": 7200
}
}
]
} ]
+ jsonfilter -l 1 -s {
"interface": [
{
"interface": "aero2",
"up": false,
"pending": false,
"available": true,
"autostart": false,
"proto": "wwan",
"data": {
}
},
{
"interface": "lan",
"up": true,
"pending": false,
"available": true,
"autostart": true,
"uptime": 3473,
"l3_device": "br-lan",
"proto": "static",
"device": "br-lan",
"updated": [
"addresses"
],
"metric": 0,
"delegation": true,
"ipv4-address": [
{
"address": "192.168.13.13",
"mask": 27
}
],
"ipv6-address": [
],
"ipv6-prefix": [
],
"ipv6-prefix-assignment": [
],
"route": [
],
"dns-server": [
],
"dns-search": [
],
"inactive": {
"ipv4-address": [
],
"ipv6-address": [
],
"route": [
],
"dns-server": [
],
"dns-search": [
]
},
"data": {
}
},
{
"interface": "loopback",
"up": true,
"pending": false,
"available": true,
"autostart": true,
"uptime": 3473,
"l3_device": "lo",
"proto": "static",
"device": "lo",
"updated": [
"addresses"
],
"metric": 0,
"delegation": true,
"ipv4-address": [
{
"address": "127.0.0.1",
"mask": 8
}
],
"ipv6-address": [
],
"ipv6-prefix": [
],
"ipv6-prefix-assignment": [
],
"route": [
],
"dns-server": [
],
"dns-search": [
],
"inactive": {
"ipv4-address": [
],
"ipv6-address": [
],
"route": [
],
"dns-server": [
],
"dns-search": [
]
},
"data": {
}
},
{
"interface": "wan",
"up": true,
"pending": false,
"available": true,
"autostart": true,
"uptime": 3470,
"l3_device": "eth0.2",
"proto": "dhcp",
"device": "eth0.2",
"updated": [
"addresses",
"routes",
"data"
],
"metric": 0,
"delegation": true,
"ipv4-address": [
{
"address": "93.105.xxx.yyy",
"mask": 22
}
],
"ipv6-address": [
],
"ipv6-prefix": [
],
"ipv6-prefix-assignment": [
],
"route": [
{
"target": "93.105.184.1",
"mask": 32,
"nexthop": "0.0.0.0",
"source": "93.105.xxx.yyy\/32"
},
{
"target": "0.0.0.0",
"mask": 0,
"nexthop": "93.105.184.1",
"source": "93.105.xxx.yyy\/32"
}
],
"dns-server": [
"37.8.214.2",
"31.11.202.254"
],
"dns-search": [
"warszawa.vectranet.pl"
],
"inactive": {
"ipv4-address": [
],
"ipv6-address": [
],
"route": [
],
"dns-server": [
],
"dns-search": [
]
},
"data": {
"leasetime": 7200
}
}
]
} -e GATEWAY=@.interface[@.interface='wan'].route[@.target='0.0.0.0' && !@.table].nexthop
+ __tmp=export GATEWAY='93.105.184.1';
+ [ -z export GATEWAY='93.105.184.1'; ]
+ eval export GATEWAY='93.105.184.1';
+ export GATEWAY=93.105.184.1
+ return 0
+ [ xeth0.2 = x ]
+ [ xeth0.2 = x ]
+ [ x93.105.184.1 = x ]
+ [ x93.105.184.1 = x ]
+ [ x93.105.184.1 = x ]
+ WAN=1
+ true
+ sleep 5
+ awk /packets received/ {print $4}
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ PR=3
+ [ x3 = x0 ]
+ [ 1 = 2 ]
+ true
+ sleep 5
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ awk /packets received/ {print $4}
+ PR=0
+ [ x0 = x0 ]
+ [ 1 = 1 ]
+ WAN=2
+ ifup aero2
+ route add -host 8.8.4.4 gateway 93.105.184.1 eth0.2
route: SIOCADDRT: Network is unreachable
+ logger -t /usr/bin/simplefailover Changing connection to backup wan: aero2
+ true
+ sleep 5
+ awk /packets received/ {print $4}
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ awk /packets received/ {print $4}
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ awk /packets received/ {print $4}
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ awk /packets received/ {print $4}
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ awk /packets received/ {print $4}
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ awk /packets received/ {print $4}
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ awk /packets received/ {print $4}
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ awk /packets received/ {print $4}
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ awk /packets received/ {print $4}
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ awk /packets received/ {print $4}
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ awk /packets received/ {print $4}
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ awk /packets received/ {print $4}
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ awk /packets received/ {print $4}
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ awk /packets received/ {print $4}
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ awk /packets received/ {print $4}
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ awk /packets received/ {print $4}
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ awk /packets received/ {print $4}
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ awk /packets received/ {print $4}
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ awk /packets received/ {print $4}
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ awk /packets received/ {print $4}
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ awk /packets received/ {print $4}
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ awk /packets received/ {print $4}
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ awk /packets received/ {print $4}
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ awk /packets received/ {print $4}
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ awk /packets received/ {print $4}
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ awk /packets received/ {print $4}
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ awk /packets received/ {print $4}
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ awk /packets received/ {print $4}
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ awk /packets received/ {print $4}
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ awk /packets received/ {print $4}
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ awk+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
/packets received/ {print $4}
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ awk /packets received/ {print $4}
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ awk /packets received/ {print $4}
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ awk /packets received/ {print $4}
+ PR=0
+ [ x0 = x0 ]
+ [ 2 = 1 ]
+ true
+ sleep 5
+ awk /packets received/ {print $4}
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ PR=3
+ [ x3 = x0 ]
+ [ 2 = 2 ]
+ WAN=1
+ route del -host 8.8.4.4 gateway 93.105.184.1 eth0.2
route: SIOCDELRT: No such process
+ ifdown aero2
+ route add default gw 93.105.184.1 eth0.2
+ logger -t /usr/bin/simplefailover Changing connection to main wan: wan
+ true
+ sleep 5
+ awk /packets received/ {print $4}
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ PR=3
+ [ x3 = x0 ]
+ [ 1 = 2 ]
+ true
+ sleep 5
+ awk /packets received/ {print $4}
+ ping -I eth0.2 -w 3 -c 3 8.8.4.4
+ PR=3
+ [ x3 = x0 ]
+ [ 1 = 2 ]
+ true
+ sleep 5