ภาพรวมระดับสูงคือ: ฉันมีเซิร์ฟเวอร์ Impish Ubuntu ที่มีสองอินเทอร์เฟซ ที่อยู่ของ 172.16.2.103/24 และ 10.1.2.10/24. ฉันต้องการให้ทราฟฟิกเริ่มต้นผ่านเกตเวย์ 172.16.2.254. อย่างไรก็ตาม เมื่อฉันระบุที่อยู่ต้นทางของ 10.1.2.10 ฉันต้องการให้มีเกตเวย์ของ 10.1.2.254. สิ่งที่ตามมาได้ผล
99% ของเวลา แต่ฉันต้องการให้เคอร์เนลเลือก IP ต้นทาง 172.16.2.103
แม้จะติดต่อ 10.1.2.0/24. สิ่งนี้เป็นไปได้ใน /etc/networks/interfaces
แต่ฉันไม่สามารถเข้าใจได้โดยใช้ netplan
นี่คือสิ่งที่ฉันมีในการกำหนดค่า netplan:
เครือข่าย:
อีเธอร์เน็ต:
ens160:
ที่อยู่:
- 172.16.2.103/24
เส้นทาง:
- ถึง: 0.0.0.0/0
ผ่าน: 172.16.2.254
เนมเซิร์ฟเวอร์:
ที่อยู่:
- 10.1.2.1
ค้นหา:
- โดเมนท้องถิ่น
ตัวเลือก: ใช่
ens192:
ที่อยู่:
- 10.1.2.10/24
นโยบายการกำหนดเส้นทาง:
- จาก: 10.1.2.10
ตาราง: 10
เส้นทาง:
- ถึง: 0.0.0.0/0
ผ่าน: 10.1.2.254
ตาราง: 10
ตัวเลือก: ใช่
รุ่น: 2
อย่างที่ฉันบอกว่ามันใช้งานได้ดีเป็นส่วนใหญ่ ฉันมีนโยบายการกำหนดเส้นทาง (กฎ ip aka) ซึ่ง
หมายความว่าถ้าฉันเปลี่ยนที่อยู่ต้นทางของแพ็กเก็ต ฉันจะค้นหา 10 เส้นทาง
ตาราง. อย่างไรก็ตาม มีเส้นทางเพิ่มเติมที่ฉันต้องการจะลบออกจากเส้นทางหลัก
นี่คือสิ่งที่ฉันมีเมื่อตรวจสอบตารางเส้นทาง:
IN1: me@host:~$ เส้นทาง ip
OUT1: ค่าเริ่มต้นผ่าน 172.16.2.254 dev ens160 proto static
OUT2: 172.16.2.0/24 dev ens160 ลิงก์ขอบเขตเคอร์เนลโปรโต src 172.16.2.103
OUT3: 10.1.2.0/24 dev ens192 ลิงก์ขอบเขตเคอร์เนลโปรโต src 10.1.2.10
IN2: me@host:~$ ตารางรายการเส้นทาง ip 10
OUT5: ค่าเริ่มต้นผ่าน 10.1.2.254 dev ens192 proto static
ฉันต้องการนำ OUT3 ออกหรือย้ายอย่างแม่นยำมากขึ้นในตารางเส้นทาง 10 เพื่อไม่ให้มีเลเยอร์ 2 ลิงก์ไปยัง 10.1.2.0/24 ใน
ตารางเส้นทางหลัก ฉันสามารถทำได้ด้วยตนเองดังนี้:
me@host:~$ เส้นทาง sudo ip del 10.1.2.0/24 dev ens192
แต่ฉันไม่เห็นวิธีการฝังใน netplan ก่อนหน้านี้ฉันจะเพิ่ม
ขึ้นข้อความถึง /etc/network/interfaces แต่นั่นไม่ใช่ตัวเลือกอีกต่อไป
ขอบคุณล่วงหน้า.