ฉันต้องการความช่วยเหลือ/คำอธิบายเล็กน้อยว่าทำไม netsetup ต่อไปนี้ไม่ทำงาน:
PC1 (192.168.66.1) <-- ธรรมดา --> (192.168.66.2) PC-GW(192.168.88.2) <-- ESP --> (192.168.88.1) PC2
ฉันสามารถส่งแพ็กเก็ตจาก PC1 192.168.66.1 ไปยัง PC2 192.168.88.1 และ PC-GW encapsulate esp และ PC2 recv แพ็กเก็ต esp ก็ใช้งานได้ดี
แต่ถ้าฉันส่งแพ็กเก็ต esp จาก PC2 192.168.88.1 ไปยัง PC1 192.168.66.1 PC-GW จะส่งต่อแพ็กเก็ต esp โดยไม่มีการแยก/ถอดรหัส และ PC1 จะได้รับแพ็กเก็ต esp
หากทั้งสองระบบใช้ ESP จะทำงานได้ดี:
PC1 (192.168.66.1) <-- ESP--> (192.168.88.1) PC2
ฉันได้ลองกำหนดค่าต่างๆ มากมาย นี่คือคำสั่งที่ฉันใช้:
ip xfrm state add src 192.168.66.1/32 dst 192.168.88.1/32 proto esp spi 0x01000000 reqid 0x01000000 mode transport aead 'rfc4106(gcm(aes))' 0x000000000000000000000000000000000000000000000000000000000000000000000000 128 sel src 192.168.66.1/32 dst 192.168.88.1/32
ip xfrm state add src 192.168.88.1/32 dst 192.168.66.1/32 proto esp spi 0x01000000 reqid 0x02000000 mode transport aead 'rfc4106(gcm(aes))' 0x000000000000000000000000000000000000000000000000000000000000000000000000 128 sel src 192.168.88.1/32 dst 192.168.66.1/32
นโยบาย ip xfrm เพิ่ม src 192.168.66.1/32 dst 192.168.88.1/32 dir out tmpl src 192.168.66.1/32 dst 192.168.88.1/32 proto esp reqid 0x01000000 โหมดการขนส่ง
นโยบาย ip xfrm เพิ่ม src 192.168.88.1/32 dst 192.168.66.1/32 dir ใน tmpl src 192.168.88.1/32 dst 192.168.66.1/32 proto esp reqid 0x02000000 โหมดการขนส่ง
ด้วยความช่วยเหลือของ tcpdump ฉันได้บันทึกอินเทอร์เฟซทั้งหมดแล้ว
ฉันไม่ได้ใช้ openswap การตั้งค่าการทดสอบนี้ไม่ใช่สถานการณ์การใช้งานจริง นี่เป็นเพียงการทดลองและฉันต้องการเรียนรู้วิธีการทำงาน