System Component
Configuration Overview
The system configuration is held under the top level system object in /etc/flockd/flockd.json. The system object must exist but can be left empty.
flock@flocknet:~$ cat /etc/flockd/flockd.json
{
"system": {}
}
flock@flocknet:~$
Configuration in detail
Filtering interfaces in system component
System component receives interfaces from the Linux kernel. Interfaces not used by any routing component can be filtered out at the system component level by using intf_denylist JSON object.
This configuration will ignore interface eth0 and all interfaces starting with en:
"system": {
...
"intf_denylist": [
# Specify the entire interface name i.e. "eth0"
# or use ^ to match the start of interface names
# e.g. "^en" will match all interfaces that start with "en"
# Multiple interface names and patterns can be used
"eth0",
"^en"
]
},
The intf_denylist object is optional. If it is not specified, all interfaces present in kernel will also be present in system component.
The filtered out interfaces will not be present in the flockc sys list-interfaces output.
Operational State Overview
Check status of flockd
flock@r70:~$ flockc sys overview
{"host_info":{"hostname":"r70", ...},"system_info":{"name":"flockd","description":"The Flock Networks Ltd Routing Suite Daemon","profile":"Release", ...},"pid":1234,"log_level":"info","uptime":"days: 0, hours: 0, mins: 0, secs: 19","enabled_protocols":["BGPv4","OSPFv2","Static"],"software_errors":0, ...}
Show all system interfaces
flock@r70:~$ flockc sys list-interfaces
[{"base":{"intf_name":"lo","intf_id":1, ...,"intf_type":"loopback","intf_mtu":65536,"intf_state":"up", ...},"ip_prefixes":["127.0.0.1/8","70.0.100.70/32","::1/128"]},{"base":{"intf_name":"r70-n70","intf_id":125675, ...,"intf_type":"broadcast","intf_mtu":1500,"intf_state":"up", ...},"ip_prefixes":["70.0.70.70/24","fc00:46:46::46/64", ...]}, ...]
Show single system interface
flock@r70:~$ flockc sys interface r70-n70
{"base":{"intf_name":"r70-n70","intf_id":125675, ...,"intf_state":"up", ...},"ip_prefixes":["70.0.70.70/24", ...]}
Show all vrfs
flock@r70:~$ flockc sys list-vrfs
[{"vrf_id":254,"vrf_name":"default","underlay_vrf_name":null,"kernel_intf_name":null, ...}]
Show single vrf
flock@r70:~$ flockc sys vrf default
{"vrf_id":254,"vrf_name":"default","underlay_vrf_name":null,"kernel_intf_name":null, ...}
System Operation
Help
flockc sys --help
Overview
flockc sys overview
All system interfaces
flockc sys list-interfaces
Single interface
flockc sys interface <interface-name>
All vrfs
flockc sys list-vrfs
Single vrf
flockc sys vrf <vrf-name>