BGP
Выключить эту опцию и повторить то же самое, только вставив хук:
#!/bin/bash # этот хук поддерживает отправку только IP адресами хостов # предполагается, что синхронизируемый список содержит # только IP адреса без масок, к ним автоматически добавляется # префикс /32. commit() { echo "wr m" | vtysh } # отправить на оборудование команду на блокирование ip адреса ip_block_full_add() { local ip="$1" read SEQ < $TMPDIR/blockseq SEQ=${SEQ:-0} let SEQ+=5 echo $SEQ > $TMPDIR/blockseq echo $SEQ { echo "conf t" echo "ip prefix-list BLACKHOLE seq $SEQ permit $ip/32" echo "ip route $ip/32 Null0" echo "end" echo "clear ip bgp * soft" } | vtysh } # отправить на оборудование команду на снятие блокировки ip адреса ip_block_full_del() { local ip="$1" { echo "conf t" echo "no ip prefix-list BLACKHOLE permit $ip/32" echo "no ip route $ip/32 Null0" echo "end" echo "clear ip bgp * soft" } | vtysh } # получить список заблокированных ip адресов ip_block_full_get() { echo -ne "show ip route static" | vtysh > $HOOKDIR/ip_route.txt egrep -o "$ip_regex" $HOOKDIR/ip_route.txt | tee $HOOKDIR/ip.txt }