เป้าหมาย
ให้อีเธอร์เน็ตมีความสำคัญเหนือกว่าแบบไร้สายเมื่อเสียบสายอีเธอร์เน็ต
วิธี
หลังจากทำ Googling ในปริมาณที่เหมาะสมแล้วการอ่านฉันมาถึงจุดที่ฉันเชื่อว่าสิ่งที่ฉันควรจะทำคือบางสิ่งตามแนวของ
nmcli connection modify [id-of-ethernet-interface] ipv4.route-metric 200
nmcli connection modify [id-of-ethernet-interface] ipv6.route-metric 200
โดยที่ 200 คือค่าต่ำกว่าตัวชี้วัดไร้สายเพื่อให้อีเธอร์เน็ตมีความสำคัญเหนือกว่าแบบไร้สาย
ผล
สิ่งที่ทำให้ฉันสับสนคือรายงานที่ฉันได้รับroute -n
หลังจากที่ฉันดำเนินการตามคำสั่งข้างต้นและรีบูตเครื่อง (สำหรับการวัดที่ดี) และความจริงที่ว่าสิ่งนี้ดูเหมือนจะไม่คุ้มค่าที่จะไปให้ถึงเป้าหมายของฉัน
$ route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 123.456.89.1 0.0.0.0 UG 600 0 0 wlp1s0
0.0.0.0 123.456.89.1 0.0.0.0 UG 20200 0 0 enp0s31f6
123.456.89.0 0.0.0.0 255.255.255.192 U 200 0 0 enp0s31f6
123.456.89.0 0.0.0.0 255.255.255.192 U 600 0 0 wlp1s0
654.321.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 enp0s31f6
จำนวนเพิ่มขึ้นเกี่ยวกับการดำเนินการคำสั่งของฉัน แต่สำหรับบรรทัดที่พูด
0.0.0.0 123.456.89.1 0.0.0.0 UG 20200 0 0 enp0s31f6
654.321.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 enp0s31f6
บรรทัดแรกมี 20 คำนำหน้าก่อนค่า 200 ที่ฉันตั้งไว้ สิ่งนี้ยังคงถูกนำไปใช้อย่างต่อเนื่องตามสิ่งที่ฉันเรียกใช้ หากฉันเปลี่ยนค่าสำหรับตัวชี้วัดผ่านnmcli
เป็น 500 route -n
จะรายงาน 20500 เหตุใดจึงเป็นเช่นนี้ มันไม่ถูกต้องเพราะฉันบอกว่าฉันต้องการทั้ง 200 หรือ 500 ไม่ใช่ 20200 และ 20500
บรรทัดที่สองมีค่าการวัดที่ฉันไม่รู้ว่ามาจากไหนและฉันไม่สามารถส่งผลกระทบได้เลย หากใครสามารถทำให้กระจ่างเกี่ยวกับเรื่องนี้ฉันรู้สึกขอบคุณ
ดูเหมือนว่าคำสั่งเหล่านี้จะสิ้นสุดลงในสิ่งที่จับต้องได้ไม่ได้มีผลกระทบต่อตัวชี้วัด ฉันไม่สามารถบอกได้ว่าอีเธอร์เน็ตกำลังมาก่อนดังนั้นฉันคิดว่ามันไม่ใช่
ผลการวิจัยอื่น ๆ
สิ่งที่ฉันได้พบอยากรู้อยากเห็นและดูเหมือนจะทำงานเพื่อบาง$ sudo ifmetric enp0s31f6 200
ขอบเขตคือการใช้ สองถึงสามสิ่งนี้;
- มันมีผลต่อเมตริกของอินเทอร์เฟซ (
route -n
รายงานทุกบรรทัดกับ Ifaceenp0s31f6
เพื่อให้มีค่า 200) - มันมีผลต่อ UI ใน Ubuntu (ที่มุมขวาบนฉันจะเห็นสวิตช์สลับภาพระหว่างอีเธอร์เน็ตและไอคอนไร้สายสลับขึ้นอยู่กับค่าตัวชี้วัดที่ฉันให้ไว้ใน
ifmetric
คำสั่ง) - บางครั้งมันก็เกิด
NETLINK: Error: File exists
ข้อผิดพลาดกับฉัน การประหารชีวิตที่ตามมาของคำสั่งเดียวกันอาจหรืออาจไม่ได้ส่งผลให้เกิดข้อผิดพลาดนี้
ข้อมูลระบบบางอย่าง
- EliteBook 850 G5
- Ubuntu 18.04
- การติดตั้ง Ubuntu ทำได้โดยการให้ผู้ติดตั้งใช้ทั้งแผ่นการเข้ารหัสที่เปิดใช้งานการดาวน์โหลดไดรเวอร์ของบุคคลที่สามที่เปิดใช้งานเป็นต้น
อัปเดต # 1
$ nmcli c show
NAME UUID TYPE DEVICE
Wired connection 2 [n/a] ethernet enp0s31f6
WiFi1 [n/a] wifi wlp1s0
$ route -n
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 [n/a] 0.0.0.0 UG 600 0 0 wlp1s0
0.0.0.0 [n/a] 0.0.0.0 UG 20200 0 0 enp0s31f6
[n/a] 0.0.0.0 255.255.255.192 U 200 0 0 enp0s31f6
[n/a] 0.0.0.0 255.255.255.192 U 600 0 0 wlp1s0
[n/a] 0.0.0.0 255.255.0.0 U 1000 0 0 enp0s31f6
nmcli c show
เป็นเช่นเดียวกับการroute -n
ส่งออกของ?