OpenVPN AF_INET-waarskuwing: onskadelike terugval of mislukte socket?
Onderskei die AF_INET-terugval van die latere socket-skeppingsfout: lees die presiese reël, kyk dan na die luisteraar en die volgende fout.
Twee OpenVPN-logreëls begin met dieselfde woorde, en net een daarvan meld 'n probleem. Could not determine IPv4/IPv6 protocol. Using AF_INET is 'n terugvalkennisgewing: die profiel het die adresfamilie oopgelaat, so die daemon het een gekies en voortgegaan. Die fouttak sê dat geen socket geskep is nie en vra 'n herbegin. Alles ná die gedeelde voorvoegsel skei hulle, so lees verby dit voordat jy iets verander.
Wat die terugvalkennisgewing aandui
OpenVPN aanvaar 'n eksplisiete familie deur proto udp4 of proto udp6, en aanvaar proto udp wanneer die familie by die opstart afgelei moet word. In die tweede geval ondersoek die daemon die plaaslike bind-inligting en kies.
Wanneer daardie afleiding werk, sê die waarskuwing watter kant toe dit gegaan het, en die proses gaan voort om die socket te skep. 'n Bediener met proto udp op 'n dubbelstapel-gasheer beland dikwels so op IPv4. Niks in daardie pad is 'n fout nie, en niks daarin dui op 'n aanval, 'n ontbrekende webbedieners of 'n verwerpte rekening nie. Die reël is net nuttig omdat latere kontroles met die familie wat dit noem, vergelyk moet word.
Behandel dit as 'n antwoord op een vraag, nie 'n diagnose nie. Dit sê watter familie hierdie proses gekies het, en glad niks oor waarom 'n kliënt nie kan verbind nie.
Hoe die fouttak lyk
Later in dieselfde socket-kode is daar 'n tak waar glad geen socket bestaan nie. Dit teken die korter adresfamilie-boodskap en vra 'n herbegin, want daar is niks oor om mee voort te gaan nie. Die openingswoorde stem ooreen met die terugval; die uitkoms nie.
Onderskei hulle aan wat volg. As die daemon aanhou loop en sy luisteraar rapporteer, was die reël inligting. As dit in 'n lus afsluit of herbegin, gaan die gesprek nou oor die bind.
'n Grep-treffer is ook nie 'n tak-identifikasie nie. Die frase duik op in geroteerde opsommings, in omgevoude reëls en in loggrepe wat mense tweedehands plak, so lees die naburige reëls en die tydstempelorde eerder as die enkele treffer.
Kontroleer eerder die luisteraar as die waarskuwing
'n Lopende bediener beantwoord die familie-vraag direk, sonder afleiding uit logteks.
ss -lunp | grep openvpn
ss -ltnp | grep openvpnPas die familie, adres en poort teen die profiel. 'n 0.0.0.0:1194-ry is slegs IPv4, terwyl 'n [::]:1194-ry op 'n dubbelstapel-gasheer albei families kan aanvaar, afhangend van die bindv6only-instelling. As die profiel udp sê en die socket is IPv4, sal kliënte wie se resolver slegs 'n AAAA-rekord teruggee misluk voordat die tonnel ooit onderhandel word.
Toets dan van 'n kliënt wat soos jou gebruikers lyk: dieselfde resolver-pad, dieselfde soort netwerk. 'n Plaaslike verbinding van die bediener bewys baie min oor verkeer wat 'n NAT-toestel oorsteek of 'n firewall-reël wat vir die ander familie geskryf is.
Wanneer dit reg is om 'n familie te forseer
Om proto udp4 vas te pen, pas by 'n slegs-IPv4-ontplooiing: 'n A-only DNS-naam, firewall-reëls vir een v4-adres, kliënte agter netwerke wat net v4-adresse uitdeel. Dit verwyder dubbelsinnigheid en maak die volgende stel logreëls voorspelbaar.
Dieselfde argument werk omgekeerd vir 'n IPv6-eerste omgewing, en udp6 voor 'n A-only kliëntebasis is 'n selfveroorsaakte onderbreking. Om 'n familie te forseer net om 'n onskadelike waarskuwing stil te maak, is die klassieke weergawe van hierdie fout, want jy het verander wie kan verbind in ruil vir 'n rustiger log.
Kies op grond van die eindpunte en die kliënte wat hulle moet bereik. Die OpenVPN 2.6-handleiding dokumenteer die vervoervorms, en die boodskap is die uitkoms van daardie keuse, nie 'n inset daartoe nie.
Hou die rekord eng
Skryf die presiese reël met sy tydstempel neer, die effektiewe vervoerinstelling uit die lopende profiel, die socket soos die kernel dit rapporteer, en die volgende stadium wat misluk het. Daardie vier items besleg byna elke vraag wat die boodskap opwerp, en nie een daarvan verg 'n raaiskoot oor onverwante dienste nie. Hulle oorleef ook 'n oorhandiging, wat 'n skermkiekie van 'n grep nie doen nie.
Pakketvoorstelle wat saam met hierdie waarskuwing opduik, is onverwant totdat 'n fout 'n ontbrekende uitvoerbare lêer noem.
As ifconfig werklik afwesig is, sê die daemon dit by die naam wanneer 'n skrip dit aanroep, en dit verdien sy eie ondersoek. Die AF_INET-reël en 'n ontbrekende nutsmiddel is verskillende foute, en om dinge te installeer om te sien of die waarskuwing verander, is hoe 'n skoon gasheer 'n morsige een word.