ทุกครั้งที่บูต อุโมงค์จะขึ้นก่อนที่ใครจะตัดสินใจใช้ และช่องทำเครื่องหมายที่ดูเหมือนเป็นตัวรับผิดชอบก็ไม่ทำอะไรเมื่อเอาออก นี่ไม่ใช่บั๊กของอินเทอร์เฟซ NetworkManager ไม่ได้เชื่อมต่อโปรไฟล์ VPN ด้วยตัวเอง VPN เริ่มขึ้นเพราะการเชื่อมต่อฐานระบุชื่อมัน การแก้ไขอยู่ที่อีกโปรไฟล์หนึ่ง และมันเป็นพร็อพเพอร์ตีเดียว

แฟล็กที่คุณเอาออกไม่ถูกนำมาพิจารณา

โปรไฟล์ VPN มีพร็อพเพอร์ตีการเชื่อมต่ออัตโนมัติของตัวเอง และสำหรับการเชื่อมต่อ VPN ตัวจัดการไม่ได้ใช้มันเพื่อเริ่มอะไร การเอาออกทำให้โปรไฟล์อ่านได้สม่ำเสมอและไม่เปลี่ยนพฤติกรรมใด ๆ และนั่นคือเหตุผลที่ความประหลาดใจยังอยู่หลังการแก้ไข

กลไกที่บันทึกไว้คือรายการการเชื่อมต่อทุติยภูมิบนโปรไฟล์ฐาน เมื่อการเชื่อมต่อ Wi-Fi หรือ Ethernet เปิดใช้งาน ตัวจัดการจะเปิดใช้งาน UUID ของ VPN ที่ระบุไว้ที่นั่นด้วย วันนี้รายการนั้นรองรับเฉพาะการเชื่อมต่อ VPN และหากมีหลายรายการ การแก้ไขหนึ่งครั้งก็ส่งผลต่อทั้งหมด

ลำดับความสำคัญของการเชื่อมต่ออัตโนมัติจัดอันดับผู้สมัคร มันก็ไม่ใช่สวิตช์ปิดเช่นกัน

อ่านทั้งสองโปรไฟล์ก่อนแก้ไข

บันทึกชื่อ UUID และชนิดก่อน เพราะชื่อที่แสดงซ้ำกันและการเชื่อมต่อฐานสับสนกับ VPN ได้ง่าย จากนั้นอ่านพร็อพเพอร์ตีที่สำคัญในแต่ละฝั่ง

nmcli -f NAME,UUID,TYPE connection show
nmcli -f connection.secondaries connection show "Wired connection 1"
nmcli -f connection.autoconnect,connection.autoconnect-priority connection show "Work VPN"

ในโปรแกรมแก้ไขแบบกราฟิก ค่าเดียวกันจะปรากฏใต้ป้ายชื่อที่ต่างกัน แท็บ General ของการเชื่อมต่อฐานมีค่าตั้งการเชื่อมต่ออัตโนมัติ และเมื่อติดตั้งปลั๊กอินแล้วยังมีตัวเลือกยก VPN ขึ้นมาด้วย เดสก์ท็อปที่แปลแล้วอาจติดป้ายช่องลำดับความสำคัญว่าเป็นการเชื่อมต่ออัตโนมัติพร้อมลำดับความสำคัญ ซึ่งไม่ใช่สวิตช์เปิดใช้งาน การสับสนทั้งสองอย่างทำให้ช่องทำเครื่องหมายถูกเอาออกและการบูตไม่เปลี่ยน

ลบหนึ่งรายการ ไม่ใช่ทั้งรายการ

พร็อพเพอร์ตีนี้เป็นรายการ ดังนั้นการกำหนดค่าใหม่จะแทนที่ทุกอย่างในนั้น ใช้เครื่องหมายลบนำหน้าเพื่อลบ UUID เดียวและปล่อยส่วนที่เหลือของรายการไว้เหมือนเดิม

nmcli connection modify uuid BASE_UUID -connection.secondaries VPN_UUID
nmcli -f connection.secondaries connection show "Wired connection 1"

ตรวจสอบรายการก่อนและหลัง โดยเฉพาะบนเครื่องที่พึ่งพา VPN ตัวที่สอง

โปรไฟล์สามารถจำกัดให้เฉพาะผู้ใช้ที่กำหนดได้ เมื่อเป็นเช่นนั้น บัญชีที่คุณแก้ไขจะต้องปรากฏในรายการนั้น มิฉะนั้นคำสั่งอาจถูกปฏิเสธ หรือตัวจัดการอาจเขียนโปรไฟล์แยกต่อผู้ใช้ที่เจ้าของเดิมไม่เคยเห็น ตรวจสอบเจ้าของก่อนสรุปว่าการแก้ไขไม่ได้ทำอะไร เพราะสำเนาต่อผู้ใช้ที่เงียบ ๆ อธิบายผลลัพธ์ที่สับสนได้หลายอย่าง

ทดสอบการเปลี่ยนผ่านจริง ไม่ใช่การรีสตาร์ตด้วยมือ

การเชื่อมต่อโปรไฟล์ฐานใหม่คือการทดสอบที่มีความหมาย ลดมันลงแล้วยกขึ้นใหม่ หรือรีบูต แล้วดูรายการที่ใช้งานอยู่ รายการอินเทอร์เฟซ และการค้นหาเส้นทางไปยังที่อยู่ภายใน

nmcli connection show --active
ip -brief address
ip route get 10.8.0.1

หากอุโมงค์ยังปรากฏอยู่ เจ้าของที่เหลือมักเป็นสคริปต์ บันทึกของตัวจัดการแสดงว่าโปรไฟล์ใดถูกเปิดใช้งานและเมื่อใด และไดเรกทอรี dispatcher คือที่ที่ฮุกซึ่งเรียก nmcli connection up เมื่อเกิดเหตุการณ์อินเทอร์เฟซจะอาศัยอยู่ ฮุกมองไม่เห็นในโปรแกรมแก้ไขโปรไฟล์ จึงรอดจากทุกการทดลองกับช่องทำเครื่องหมาย

ทำให้เส้นทางด้วยมือยังใช้งานได้ เพราะนั่นคือข้อกำหนดจริง

ผลลัพธ์ที่ดีเป็นอย่างไร

โปรไฟล์ยังคงติดตั้งอยู่พร้อมเกตเวย์ ใบรับรอง และข้อมูลรับรองของมัน มันไม่เปิดใช้งานตอนบูต และจะขึ้นมาเมื่อคุณขอ สามประโยคนั้นคือการทดสอบการยอมรับ

เขียน UUID ของการเชื่อมต่อฐานลงใน runbook เพราะนั่นคือโปรไฟล์ที่คุณจะแก้ไขครั้งหน้า

VPN ที่ใช้ได้แต่ไม่ใช่อัตโนมัติเป็นทางเลือกของการกำหนดค่า ไม่ใช่ฟีเจอร์ที่ขาด และห่างออกไปเพียงพร็อพเพอร์ตีเดียว

บทความที่เกี่ยวข้อง