ฉันลงทะเบียนกับ ISP ใหม่และพวกเขาไม่ให้ที่อยู่ IPv4 ภายนอกแก่ฉัน ฉันได้ตั้งค่าเซิร์ฟเวอร์เสมือน (S) (ที่มีที่อยู่) เพื่อส่งต่อข้อมูลทั้งหมดของฉันไปยังกล่องของฉันที่บ้าน (B) โดยใช้อุโมงค์ wireguard
บน (S) ฉันกำหนดค่า:
sysctl -w net.ipv4.ip_forward=1
ไฟร์วอลล์ cmd --zone=external --add-forward-port=port=<EXTERNAL PORT>:proto=<PROTOCOL>:toport=<INTERNAL PORT>:toaddr=<INTERNAL IP>
ไฟร์วอลล์ cmd --zone = ภายนอก --add-masquerade
ไฟร์วอลล์ cmd --zone = ภายนอก -- เพิ่มพอร์ต = <พอร์ตภายนอก> / <โปรโตคอล>
เปิด (B) ฉันกำหนดค่า:
ไฟร์วอลล์ cmd --zone=internal --add-port=<INTERNAL PORT>/<PROTOCOL>
การตั้งค่าทำงานได้ค่อนข้างดี การเชื่อมต่อทั้งหมดมาถึงที่ (B) แต่ที่อยู่ต้นทาง (เห็นได้ชัดว่า) ปลอมแปลง เพียงแค่ลบการปลอมแปลงผ่านทาง ไฟร์วอลล์ cmd --zone = ภายนอก --remove-masquerade
บน (S) ไม่ทำงาน
คำถามของฉันตอนนี้คือ: จะบรรลุการตั้งค่าที่คล้ายกันกับ firewalld ได้อย่างไร ซึ่งไม่ปลอมแปลงที่อยู่ IP ต้นทาง เพื่อให้ฉันยังสามารถวิเคราะห์แหล่งที่มาบน (B) ได้
ขอบคุณล่วงหน้า!