FreeBSDDriver (`freebsd`) and OpenBSDDriver (`openbsd`) on a shared BsdDriver, for the BSD VMs netOrk provisions and BSD hosts added by hand (NetOrk/netork#798). - SSH over exec channels (napalm-device-types' run_on_transport): no PTY, stdout and stderr apart, real exit codes; run_command()/open_stream() are public. Root through `sudo -S` with the password on stdin, or `sudo -n` without one. - Facts: hostname, release and running kernel (freebsd-version / uname), hardware from SMBIOS (kenv) or hw.* sysctls, uptime from kern.boottime. - Interfaces and addresses (ifconfig -a: ether/lladdr, hex netmasks, scoped IPv6), routes (netstat -rn, OpenBSD's abbreviated networks written out, host/broadcast/loopback entries left out), ARP (FreeBSD's sentences, OpenBSD's table), users and groups, processes (lstart read as one five-word field), cron jobs (system crontab and the login user's). - Parsers are pure functions, tested on output recorded from FreeBSD 15.1 (hand-installed and cloud image) and OpenBSD 7.9 (NetOrk/netork#793), with internal addresses replaced by documentation ranges.
21 lines
624 B
Plaintext
21 lines
624 B
Plaintext
lo0: flags=2008049<UP,LOOPBACK,RUNNING,MULTICAST,LRO> mtu 32768
|
|
index 3 priority 0 llprio 3
|
|
groups: lo
|
|
inet6 ::1 prefixlen 128
|
|
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x3
|
|
inet 127.0.0.1 netmask 0xff000000
|
|
vio0: flags=808843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST,AUTOCONF4> mtu 1500
|
|
lladdr bc:24:11:aa:bb:04
|
|
index 1 priority 0 llprio 3
|
|
groups: egress
|
|
media: Ethernet autoselect
|
|
status: active
|
|
inet 10.0.2.15 netmask 0xffffff00 broadcast 10.0.2.255
|
|
enc0: flags=0<>
|
|
index 2 priority 0 llprio 3
|
|
groups: enc
|
|
status: active
|
|
pflog0: flags=141<UP,RUNNING,PROMISC> mtu 33136
|
|
index 4 priority 0 llprio 3
|
|
groups: pflog
|