_.--._
.' '.
/ (o) \____
| ____>
__ \ .-'
\ `-.____/ \
\ |
'. \_____/ /
`-._ _.'
`-------'
Entwicklungsstand. Image bios-0.4.0-dev.20261101-generic-amd64.iso, gebaut aus Commit
bdaf3082f, mit VPP 26.10 und Linux 7.3.
| Benutzer | bios |
| Passwort | bios |
| Hostname | bios |
| Serielle Konsole | ttyS0, 115200 Baud |
| Netzwerk | keine Adressen, SSH aus |
| Routing-Backend | BIRD, FRR als Fallback |
Nach dem Start vom ISO mit install image auf die Platte installieren und das Passwort ändern:
configure
set system login user bios authentication plaintext-password <passwort>
commit
save
SSH einschalten:
set interfaces ethernet eth0 address <adresse>/<präfix>
set service ssh
commit
save
VPP braucht isolierte CPU-Kerne und Huge Pages, beides wirkt erst nach einem Neustart:
set system option kernel cpu isolate-cpus 2-3
set system option kernel memory hugepage-size 2M hugepage-count 1800
commit
save
reboot
Danach:
set vpp settings interface eth1
commit
| Neuestes Image | https://bios.bosner.de/images/latest/bios-generic-amd64.iso |
| Für Programme | https://bios.bosner.de/latest.json (Version, URL, Größe, SHA-256), https://bios.bosner.de/images.json |
| Dieser Bericht | https://bios.bosner.de/report.html, als Text https://bios.bosner.de/report-0.4.0.md |
SHA-256 des Images: 05ae80f680f3b62f22eee0c2c684039ee78ae6b265734e3818fd7f5553721180
stable/2610), mit 41 Patches. 0001–0037 sind
die portierten VyOS-Patches, 0038–0041 kommen von biOS.pmd-init-fail), etwa virtio mit host_mtu=1500.tap, ipip und policer sind in 26.10 eigenständig und in startup.conf
eingeschaltet, avf gibt es nicht mehr.openssl ist immer aktiv, WireGuard braucht ChaCha20-Poly1305.accel-ppp-ng ist gegen VPP 26.10 gebaut, sonst startet der PPPoE-Server nicht.Soft RSS verteilt Pakete per Software auf die Worker, für Verkehr, den die NIC nicht hashen
kann. Braucht cpu-cores 2 oder mehr:
set vpp settings resource-allocation cpu-cores 2
set vpp settings interface eth1 soft-rss type 4-tuple # 2-tuple, src-ip, dst-ip
WireGuard im Dataplane, die Schnittstelle erscheint für BIRD und FRR im Kernel:
set interfaces vpp wireguard vppwg0 address 10.255.0.1/30
set interfaces vpp wireguard vppwg0 source-address 192.0.2.1
set interfaces vpp wireguard vppwg0 port 51820
set interfaces vpp wireguard vppwg0 private-key <key>
set interfaces vpp wireguard vppwg0 peer site-b public-key <key>
set interfaces vpp wireguard vppwg0 peer site-b preshared-key <key>
set interfaces vpp wireguard vppwg0 peer site-b allowed-ips 10.255.0.2/32
set interfaces vpp wireguard vppwg0 peer site-b address 198.51.100.2
set interfaces vpp wireguard vppwg0 peer site-b port 51820
allowed-ips stehen.vppwgN braucht einen Next
Hop in den allowed-ips eines Peers.source-address ist Pflicht und muss auf einem VPP-Interface liegen.Firewall für weitergeleiteten Verkehr: set firewall ipv4|ipv6 forward filter wirkt jetzt
auch auf das, was VPP weiterleitet, als ACLs des VPP-ACL-Plugins.
accept wird permit+reflect, Antwortverkehr läuft über Sessions.established muss accept sein: global-options state-policy established action accept.reject verwirft nur, ohne ICMP oder RST.outbound-interface, limit, recent, time, mark, dscp, geoip, fqdn.vpp acl ip interface kann nicht zugleich gefiltert werden.tools/smoketest <iso> [--shards 10] führt die Testsuite parallel in mehreren VMs aus.tools/publish-image <iso> veröffentlicht ein Image auf dem Download-Server.Lauf auf dem oben genannten Image, 11 VMs mit KVM, virtio-, e1000e- und vmxnet3-NICs:
| Module | 115, alle bestanden |
| Tests | 1397, kein Fehler |
| Übersprungen | 151: 147 Interface-Tests für Funktionen, die die jeweilige Interface-Familie nicht hat, 2 nur für arm64, 2 passen nicht zu IPoE |
| Darunter VPP | test_vpp.py, 49 Tests |
| Dauer | 18 Minuten |
Einzelergebnisse je Modul: https://bios.bosner.de/results-0.4.0.json
Drei VMs mit virtio-NICs: B – A (VPP) – C, in den WireGuard-Tests auch B mit VPP.
| Test | Ergebnis |
|---|---|
| Ping von B an den Router A über Linux-CP | 3 von 3 |
| Weiterleitung von B nach C durch VPP | 4 von 5 |
| Forward-Filter nur TCP: Ping von B nach C | 0 von 3, verworfen wie konfiguriert |
| Derselbe Filter: Ping von B an den Router | 3 von 3 |
| Regel für ICMP ergänzt: Ping von B nach C | 3 von 3 |
| Ohne Regel in Gegenrichtung: Ping von C nach B | 0 von 3, verworfen wie konfiguriert |
| BGP mit BIRD | Established, Route im Kernel und in der VPP-FIB (lcp-rt-dynamic) |
| Neustart von A | VPP, ACLs, BGP-Session und FIB-Route wieder da; danach 2 von 3 Pings |
| Neustart von VPP mit Firewall und Soft RSS | ACLs wieder da, Soft RSS aktiv; kurz darauf 20 von 20 |
| WireGuard mit Preshared Key | je 5 von 5 in beide Richtungen, Handshake aufgebaut |
Die einzelnen Paketverluste treten kurz nach Konfiguration oder Start auf. Die Ursache ist nicht untersucht, naheliegend ist die Auflösung der Nachbaradressen.
Protokolle: BGP und Neustart, WireGuard, Firewall und Soft RSS
testc, testcvpp), RAID, TPM, Secure Boot, UEFI nur
stichprobenartig.