<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
</head>
<body>
Hi, I have this script that configures routes for me between
different routers and servers.<br>
I have a few routers that have down in the wan and connect with the
mesh network.<br>
How can I dynamically change the gateway?<br>
Example: if the wan drops, use the mesh as the gateway.
<p><br>
</p>
<pre># Configure logging
log syslog all;
log "/var/log/bird.log" all;
log stderr all;
router id from "br-lan";
# Sync bird routing table with kernel
protocol kernel kernel4 {
description "Kernel protocol for IPv4";
metric 50;
ipv4 {
table master4;
export filter {
if proto = "lan" then reject;
accept;
};
import all;
};
};
protocol kernel kernel6 {
description "Kernel protocol for IPv6";
metric 300;
ipv6 {
table master6;
export filter {
if proto = "lan" then reject;
accept;
};
import all;
};
};
protocol device {
description "Device protocol";
};
protocol direct lan {
description "LAN protocol";
ipv4;
ipv6;
interface "br-lan";
check link;
}
protocol babel ninux {
description "Babel protocol for NINUX network";
ipv4 {
export where (source = RTS_DEVICE) || (source = RTS_BABEL);
};
ipv6 {
export where (source = RTS_DEVICE) || (source = RTS_BABEL);
};
interface "vpnbas" {
check link;
};
## Used to connect with other neighbours on the same layer 2 network.
## Decomment the config to use it, not this comments of course!
## Use the correct name interface, not the logical openwrt/(l)uci one.
## You can define more interfaces maches using * in regex (like "ifnet*")
## or "ifnet1", "ifnet2", "ifnetN", "otherifnetnames" form.
## You can also define more interfaces with other parameters, please refer to:
## <a class="moz-txt-link-freetext" href="https://bird.network.cz/?get_doc&v=20&f=bird-6.html#ss6.1">https://bird.network.cz/?get_doc&v=20&f=bird-6.html#ss6.1</a>
## After, reload the bird daemon with: /etc/init.d/bird reload
## or if you perefer, reastart with: /etc/init.d/bird restart
interface "mesh" {
type wireless; # or wired
check link;
};
}</pre>
</body>
</html>