Score:0

เครือข่ายคอนเทนเนอร์บริดจ์กับเครือข่ายย่อยบน Hetzner และ CNI

ธง us
cpl

ฉันกำลังพยายามสร้างเครือข่ายส่วนตัวของ VM และคอนเทนเนอร์บน เฮทซ์เนอร์ คลาวด์. ฉันได้ทดสอบการตั้งค่านี้กับเครือข่ายในบ้านของฉันแล้ว และทุกอย่างทำงานได้ดี

แผนคือการมีเครือข่ายส่วนตัวสำหรับ VMs (10.0.0.0/8 เพียงเพื่อการทดสอบ) สำหรับการทดสอบของฉันฉันใช้ 10.10.0.1 และ 10.10.0.2 เป็น VM และแต่ละ VM จะมีเครือข่ายบริดจ์ CNI (เช่น: 172.20.0.0/16, สำหรับภาชนะ). ฉันต้องการทำให้เครือข่ายบริดจ์สามารถเข้าถึงได้โดย VM ใดๆ บน 10.0.0.0/8 เครือข่ายด้วยเส้นทางคงที่

ใน Hetzner ฉันได้กำหนดค่าเส้นทางคงที่ 172.20.0.0/16 ถึง 10.10.0.1. บน 10.10.0.1 ฉันมีเครือข่ายบริดจ์ CNI สำหรับ Podman ซึ่งกำหนดค่าในช่วงเดียวกัน 172.20.0.0/16.

คอนเทนเนอร์ใดๆ ที่วางอยู่บนเครือข่ายนั้น ไม่มีปัญหาในการส่ง Ping หรือติดต่อกับ: ภายในเครื่อง คอนเทนเนอร์อื่นๆ โฮสต์หรืออินเทอร์เน็ต และโฮสต์ (10.10.0.1) ไม่มีปัญหาในการเข้าถึงคอนเทนเนอร์ (172.20.0.X).

ปัญหาคือเมื่อฉันต้องการ ping คอนเทนเนอร์จาก 10.10.0.2. ฉันได้ตรวจสอบการจราจรด้วย tcpdump และ ถ้าด้านบนและดูเหมือนว่าเส้นทาง Hetzner จะทำงานได้ดี เมื่อการเชื่อมต่อเข้าถึง VM บน 10.10.0.1 (ens10). ซึ่งทำให้ฉันสงสัยว่าเป็นปัญหาการกำหนดเส้นทางระหว่าง ens10 และ พ็อดแมน-vlan บริดจ์อินเตอร์เฟส?

นี่คือเส้นทางจาก 10.10.0.1

ค่าเริ่มต้นผ่าน 172.31.1.1 dev eth0 proto dhcp src XYZW metric 100 
10.0.0.0/8 ผ่าน 10.0.0.1 dev ens10 
ลิงก์ขอบเขต 10.0.0.1 dev ens10 
172.17.0.0/16 dev docker0 proto kernel ขอบเขตลิงค์ src 172.17.0.1 
172.20.0.0/16 การพัฒนา podman-vlan proto kernel scope link src 172.20.0.1 
172.31.1.1 dev eth0 proto dhcp ขอบเขตลิงก์ src XYZW เมตริก 100 

บน 10.10.0.2 VM ฉันเพิ่งทำ ip เพิ่ม 172.20.0.0/16 ผ่าน 10.0.0.1 (ซึ่งดูเหมือนว่าจะทำงานเป็น).

ความคาดหวังของฉันคือการได้รับ 10.10.0.2 -> 10.0.0.1 -> 10.10.0.1 -> 172.20.0.1 -> 172.20.0.X. ทุกอย่างดูเหมือนจะหายไปแทน 10.10.0.1รวมทั้งถ้าฉันพยายาม ping -I ens10 172.20.0.X

นี่คือการกำหนดค่า CNI:

{
  "cniVersion": "0.4.0",
  "ชื่อ": "พอดแมน",
  "ปลั๊กอิน": [
    {
      "ประเภท": "สะพาน",
      "สะพาน": "podman-vlan",
      "isGateway": จริง
      "ipMasq": จริง
      "promiscMode": จริง
      "ไอแพม": {
        "ประเภท": "โฮสต์ท้องถิ่น",
        "เส้นทาง": [{ "dst": "0.0.0.0/0" }],
        "ช่วง": [
          [
            {
              "เครือข่ายย่อย": "172.20.0.0/16",
              "เกตเวย์": "172.20.0.1"
            }
          ]
        ]
      }
    },
    {
      "ประเภท": "พอร์ตแมป",
      "ความสามารถ": {
        "portMappings": จริง
      }
    },
    {
      "ประเภท": "ไฟร์วอลล์"
    },
    {
      "ประเภท": "จูน"
    }
  ]
}

ขอบคุณล่วงหน้า.

Score:0
ธง us
cpl

เป็นปัญหาเกี่ยวกับ Docker ที่มีอยู่ใน VM และ iptables นั้น

กำลังตรวจสอบ iptables -L บน VM

ห่วงโซ่ FORWARD (นโยบาย DROP)
เป้าหมาย prot เลือกปลายทางต้นทาง
DOCKER-USER ทั้งหมด - ทุกที่ ทุกแห่ง
CNI-FORWARD ทั้งหมด - ทุกที่ ทุกแห่ง

นักเทียบท่าให้ความสำคัญ ดังนั้น ให้กำหนดค่ากฎเพื่อส่งต่ออินเทอร์เฟซที่ถูกต้องไปยัง CNI/Podman/Docker หรืออะไรก็ตามที่จำเป็น

ในกรณีของฉัน การลบ Docker เป็นทางเลือกหนึ่งและแก้ไขทุกอย่างได้

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา