OpenVPN AF_INET -varoitus: harmiton varareitti vai epäonnistunut socket?
Erottele AF_INET-varareitti myöhemmästä socketin luonnin virheestä: lue tarkka rivi ja tarkista sitten kuuntelija ja seuraava virhe.
Kaksi OpenVPN-lokiriviä alkavat samoilla sanoilla, ja vain yksi niistä ilmoittaa ongelmasta. Could not determine IPv4/IPv6 protocol. Using AF_INET on varareitin ilmoitus: profiili jätti osoiteperheen avoimeksi, joten daemon valitsi yhden ja jatkoi. Virheen haara ilmoittaa, ettei socketia luotu, ja pyytää uudelleenkäynnistystä. Kaikki jaetun etuliitteen jälkeen erottaa ne, joten lue sen yli ennen kuin muutat mitään.
Mitä varareitin ilmoitus kertoo
OpenVPN hyväksyy nimenomaisen perheen komennolla proto udp4 tai proto udp6 ja hyväksyy proto udp, kun perhe on johdettava käynnistyksessä. Jälkimmäisessä tapauksessa daemon tarkastelee paikallista sidontatietoa ja valitsee.
Kun tämä johtaminen toimii, varoitus kertoo kumpaan suuntaan mentiin ja prosessi jatkaa socketin luontia. Palvelin, jolla on proto udp kaksoispinon isännässä, päätyy näin melko usein IPv4:ään. Mikään tällä polulla ei ole virhe, eikä mikään siinä viittaa hyökkäykseen, puuttuvaan verkkopalvelimeen tai hylättyyn tiliin. Rivi on hyödyllinen vain siksi, että myöhempiä tarkistuksia pitäisi verrata siihen perheeseen, jonka se nimeää.
Käsittele sitä vastauksena yhteen kysymykseen, ei diagnoosina. Se kertoo, minkä perheen tämä prosessi valitsi, eikä mitään siitä, miksi asiakas ei voi yhdistää.
Miltä virheen haara näyttää
Myöhemmin samassa socket-koodissa on haara, jossa socketia ei ole lainkaan. Se kirjaa lyhyemmän osoiteperheviestin ja pyytää uudelleenkäynnistystä, koska jatkamiseen ei jää mitään. Alkusanat vastaavat varareittiä; tulos ei.
Erottele ne siitä, mitä seuraa. Jos daemon jatkaa käyntiä ja ilmoittaa kuuntelijastaan, rivi oli tietoa. Jos se poistuu tai käynnistyy uudelleen silmukassa, keskustelu koskee nyt sidontaa.
Myöskään grep-osuma ei ole haaran tunnistus. Ilmaus esiintyy kierrätetyissä yhteenvedoissa, kierretyissä riveissä ja lokikatkelmissa, joita ihmiset liittävät toisen käden lähteistä, joten lue viereiset rivit ja aikaleimojen järjestys yksittäisen osuman sijaan.
Tarkista kuuntelija varoituksen sijaan
Käynnissä oleva palvelin vastaa perhekysymykseen suoraan ilman lokitekstistä tehtyjä päätelmiä.
ss -lunp | grep openvpn
ss -ltnp | grep openvpnSovita perhe, osoite ja portti profiiliin. Rivi 0.0.0.0:1194 on vain IPv4, kun taas rivi [::]:1194 kaksoispinon isännässä voi hyväksyä molemmat perheet asetuksesta bindv6only riippuen. Jos profiili sanoo udp ja socket on IPv4, asiakkaat, joiden resolver palauttaa vain AAAA-tietueen, epäonnistuvat ennen kuin tunnelia edes neuvotellaan.
Testaa sitten asiakkaalta, joka muistuttaa käyttäjiäsi: sama resolverin polku, sama verkkotyyppi. Paikallinen yhteys palvelimelta todistaa hyvin vähän liikenteestä, joka kulkee NAT-laitteen tai toiselle perheelle kirjoitetun palomuurisäännön läpi.
Milloin perheen pakottaminen on oikein
proto udp4-asetuksen kiinnittäminen sopii vain-IPv4-käyttöön: vain A-tietueen DNS-nimi, palomuurisäännöt yhdelle v4-osoitteelle, asiakkaat operaattorien takana, jotka antavat vain v4-osoitteita. Se poistaa epäselvyyden ja tekee seuraavasta lokirivijoukosta ennustettavan.
Sama argumentti toimii päinvastoin IPv6-edellä olevalle ympäristölle, ja udp6 vain A-asiakaskannan edessä on itse aiheutettu katkos. Perheen pakottaminen vain harmittoman varoituksen vaientamiseksi on tämän virheen klassinen muoto, koska olet muuttanut, kuka voi yhdistää, vaihdossa rauhallisempaan lokiin.
Valitse päätepisteiden ja niiden asiakkaiden perusteella, joiden on päästävä niihin. OpenVPN 2.6 -käsikirja dokumentoi siirtomuodot, ja viesti on tuon valinnan tulos, ei sen syöte.
Pidä kirjaus suppeana
Kirjoita tarkka rivi aikaleimoineen, käynnissä olevan profiilin tehokas siirtoasetus, socket sellaisena kuin ydin sen ilmoittaa, ja seuraava vaihe, joka epäonnistui. Nämä neljä asiaa ratkaisevat lähes jokaisen kysymyksen, jonka viesti herättää, eikä mikään niistä vaadi arvailua asiaankuulumattomista palveluista. Ne kestävät myös työn siirron, mitä grep-kuvakaappaus ei tee.
Tämän varoituksen ohella saapuvat pakettiehdotukset eivät liity asiaan, ennen kuin virhe nimeää puuttuvan suoritettavan tiedoston.
Jos ifconfig todella puuttuu, daemon sanoo sen nimeltä, kun skripti kutsuu sitä, ja se ansaitsee oman tutkimuksensa. AF_INET-rivi ja puuttuva apuohjelma ovat eri vikoja, ja asioiden asentaminen nähdäkseen muuttuuko varoitus on se tapa, jolla siisti isäntä muuttuu sotkuiseksi.