VPN-broscriptet kalder stadig brctl: hvad det betyder
En brohjælper, der fejler på brctl, er et lokalt afhængighedsproblem, ikke en tunnefejl. Beslut, om scriptet skal vedligeholdes, eller om broarbejdet skal migreres.
Tunnelklienten er installeret, profilen er gyldig, og hjælperen fejler stadig på en kommando kaldet brctl. Geninstallering af VPN-pakken retter det ikke, fordi det manglende program ikke er en del af tunnelen. Det er en del af et lokalt broscript, og scriptet beder om et værktøj, som det nuværende system ikke længere leverer som standard. De to problemer ser kun relaterede ud, fordi scriptet kører ved forbindelsestidspunktet.
Et manglende hjælpeprogram er ikke en tunnefejl
Begynd med det præcise kald og dets miljø. En kommando, der findes i din interaktive shell, kan mangle i en tjenestes begrænsede søgesti, så en ikke-fundet-fejl kan betyde to forskellige ting. Kør command -v brctl som tjenestebruger, og læs den unit, der starter scriptet med systemctl cat openvpn-bridge-helper eller dets ækvivalent. Fejlteksten nævner normalt den manglende binære fil, og det navn er den afhængighed, der skal løses.
Geninstallering af tunnelklienten leverer tunnelen, ikke broværktøjet. Det er separate pakker med separate vedligeholdere.
Hvad brctl gjorde, og hvorfor det er forældet
Værktøjet oprettede og administrerede Linux Ethernet-broer: addbr oprettede en bro, og addif tilknyttede en port. Debians manual markerer det som forældet og peger på iproute2-broværktøjerne, som dækker mere. Forældet betyder ikke fjernet overalt, og et nyere værktøj til stede gør ikke et scripts bogstavelige brctl-kald vellykket.
Spørgsmålet er altså ikke, om brctl er godt. Det er, om scriptet stadig vedligeholdes, og hvilken pakke, hvis nogen, din distribution leverer til det.
To ærlige muligheder: vedligehold eller migrer
Vedligehold betyder at installere den dokumenterede afhængighed fra din distributions understøttede pakke og bekræfte scriptets oprindelse, forventede version og eksekveringssti. Det tilfredsstiller en manglende eksekverbar fil og intet andet: scriptets bronavne, adresseplan og oprydningsadfærd forbliver uvaliderede. Migrering betyder at omskrive de tilsigtede handlinger til den understøttede netværkskonfiguration. Brooprettelse, porttilknytning, værtadressering og linkaktivering er fire separate ændringer, og et shell-alias fra brctl til et andet værktøj er ikke en oversættelse.
iproute2-ækvivalenterne er korte: ip link add name br-vpn type bridge opretter broen, og ip link set tap0 master br-vpn tilknytter en port.
Skriv ned, hvilken mulighed du valgte, og hvem der ejer scriptet. En halvt migreret hjælper, der kalder begge værktøjer, er værre end nogen af dem.
Se på brodesignet før nogen af de to
En Ethernet-bro passer til et design, der har brug for Ethernet-transport og TAP-peers. Installation af broværktøjer gør ikke en rutet TUN-forbindelse til en bro, og en understøttet rutet profil bør ikke bøjes for at passe til et urelateret script. Hvis profilen router, så find ud af, hvorfor en brohjælper overhovedet kører.
Før du rører en rigtig bro, bevar administrationsstien og identificér den eneste ejer af netværkskonfigurationen.
Læs derefter den næste fejl, efter at afhængigheden er rettet. Lokal broopsætning, fjernautentificering og tilladt trafik gennem resultatet er tre separate udfald, og kun ét af dem handlede nogensinde om brctl.