Quagga is probably one of the oldest software router around. It still works, of course, even though it has an unattractive configuration syntax (unfortunately inspired by Cisco's IOS) and has some small issues with IPv6. But since it's so old, you will find a lot of configuration examples around.
Source address selection
Use this in your
RM_SET_SRC permit 10 src 172.22.XX.XX protocol bgp route-map RM_SET_SRC
Unfortunately, this is not possible with IPv6...
Important bgp commands
To connect to bgpd use:
Which provides an interactive interface. In this interface '?' can be used to list the available commands or subcommands.
a minimal config would look like this:
> router )> neighbor <neighbor-ip> remote-as <neighbor-asn> )> neighbor <neighbor-ip> interface <interface> )> exit )> exit )
for IPv6 do something like
> router )> neighbor <neighbor-ip> remote-as <neighbor-asn> )> neighbor <neighbor-ip> interface <interface> )> no )> address-family )> neighbor <neighbor-ip> activate )> exit )> exit )> exit )
peer groups, prefix lists and such
If you want to use 'prefix-list' to filter some of the prefixes quagga is receiving, you can use a 'peer-group' instead of apply the prefix list to every neighbor.
Define a peer group:
> neighbor <peer-group-name> peer-group )
Apply to a neighbor:
> neighbor <neighbor-ip> peer-group <name> )
Apply a prefix list for incoming prefixes to your peer group:
> neighbor <peer-group-name> prefix-list <prefix-list-name> in )
Example filter list
! ! !
Example filter list script
#!/bin/bash ; #drop old prefix list while do ; #insert prefix list row by row done;
show bpg session status
in this example:
- an active bgp session exists with peer 64713.
- no (vpn) connection at all exists with peer 64692
- a (vpn) connection with 4242421375 exists, but no bgp session
vtysh> show ip bgp summary BGP router identifier 172.22.100.254, local AS number 64698 RIB entries 938, using 103 KiB of memory Peers 11, using 49 KiB of memory Peer groups 1, using 32 bytes of memory Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd 172.22.92.247 4 64692 0 0 0 0 0 never Connect ... 172.22.113.2 4 64713 2206 865 0 0 0 01:23:11 322 .... 172.23.64.1 4 4242421375 0 0 0 0 0 never Active fe80::deca:fbad 4 64699 902 694 0 0 0 01:23:57 486