#!/bin/sh set -e # should have been started on install, but policy may have inhibited that service frr restart # these should be running by default pgrep watchfrr pgrep zebra pgrep staticd # configure interactively, save to file vtysh -c 'configure terminal' -c 'ip route 198.51.100.0/28 127.0.0.1' vtysh -c 'show running-config' | grep -q 'ip route 198.51.100.0/28 127.0.0.1' vtysh -c 'write memory' grep -q 'ip route 198.51.100.0/28 127.0.0.1' /etc/frr/frr.conf # configure in file, check interactively sed -e '/^ip route 198.51.100.0\/28 127.0.0.1/ c ip route 198.51.100.64/28 127.0.0.1' \ -i /etc/frr/frr.conf service frr reload # wait for the new config to load for __t in $(seq 1 10); do if vtysh -c 'show running-config' | grep -q 'ip route 198.51.100.64/28 127.0.0.1'; then break fi sleep "$__t" done # fail if the old config is still loaded if vtysh -c 'show running-config' | grep -q 'ip route 198.51.100.0/28 127.0.0.1'; then exit 1 fi