วิธีการสร้างอุโมงค์จาก IPv4 ไปยังอุปกรณ์ IPv6 ระยะไกลอย่างโปร่งใสได้อย่างไร


11

ที่บ้านฉันเชื่อมต่อกับที่อยู่ IPv6 และนอกจากนี้ผู้ให้บริการของฉันยังให้การตั้งค่าเหมือน NAT ซึ่งฉันได้รับที่อยู่ IPv4 สาธารณะที่ฉันแบ่งปันกับลูกค้าคนอื่น ๆ

เป็นผลให้ฉันไม่สามารถเข้าถึงอุปกรณ์ที่บ้าน (เช่นเกตเวย์ VPN ของฉัน) เมื่อฉันอยู่ในเครือข่าย IPv4 อย่างไรก็ตามฉันมีเซิร์ฟเวอร์ที่มีทั้ง IPv4 และที่อยู่ IPv6 ดังนั้นจึงเป็นไปได้ที่จะเข้าถึงอุปกรณ์ที่บ้านของฉันถ้าฉันผ่านเซิร์ฟเวอร์ของฉัน

นี่คือสิ่งที่ฉันมีอยู่ในใจ: ตั้งแต่ IPv6 อุปกรณ์แต่ละเครื่องจะได้รับ IP ของตัวเองเซิร์ฟเวอร์ของฉันที่บ้านได้รับ IPv6 IP แบบคงที่ เซิร์ฟเวอร์ระยะไกลของฉันมีทั้งแบบคงที่ IPv4 และ IPv6

เมื่อฉันต้องการเข้าถึงเซิร์ฟเวอร์ OpenVPN ที่บ้านก่อนหน้านี้ฉันจะเปิดพอร์ต 1194 ในเราเตอร์ของฉันและ NAT จะส่งการเชื่อมต่อไปยังเซิร์ฟเวอร์ที่นั่น ในสถานการณ์ใหม่ของฉันฉันต้องการเชื่อมต่อที่พอร์ต 1194 (หรือต่างกันไม่สำคัญ) บนเซิร์ฟเวอร์ระยะไกลของฉันและควรใช้การเชื่อมต่อนั้นและทำการเชื่อมต่อกับเซิร์ฟเวอร์ภายในบ้านของฉัน

กราฟิกนี้หมายถึง:

อุปกรณ์มือถือ (IPv4) -> เซิร์ฟเวอร์ระยะไกล (IPv4 + IPv6) -> เซิร์ฟเวอร์ภายในบ้าน (IPv6)

แต่สิ่งนี้จะเกิดขึ้นกับพอร์ตที่เลือกเท่านั้น (หรือมีวิธีที่ฉลาดกว่าการเลือกพอร์ต)

คำถามของฉันคือฉันจะตั้งค่านี้ได้อย่างไร

ควรใช้งานระดับใด ถ้าฉันต้องการทำโดยพอร์ตฉันต้องส่งแพ็กเก็ตที่เลเยอร์ TCP / UDP แนวคิดแรกของฉันคือ iptables แต่ iptables สามารถส่งต่อแพ็กเก็ตไปยัง IP ระยะไกลได้หรือไม่ หรือมีซอฟต์แวร์อื่นที่สามารถทำได้? หรือฉันควรสร้างช่องสัญญาณระหว่างเซิร์ฟเวอร์สองเครื่องแล้วส่งต่อภายในเครื่องนี้หรือไม่ ฉันจะทำยังไง


1
คุณได้พิจารณาใช้นายหน้าอุโมงค์ IPv6 สำหรับแล็ปท็อปของคุณหรือไม่?
Michael Hampton

@MichaelHampton ขอบคุณสำหรับคำแนะนำ แต่ฉันอยากจะมีวิธีที่ไม่ต้องการการเปลี่ยนแปลงอุปกรณ์เพราะฉันตั้งใจจะทำการเชื่อมต่อจากโทรศัพท์ของฉัน (android) และอุปกรณ์อื่น ๆ การตั้งค่าควรเรียบง่ายเหมือนเมื่อก่อนจากมุมมองของอุปกรณ์
javex

คำตอบ:


13

ในที่สุดฉันก็พบวิธีแก้ปัญหาด้วยการส่งต่อพอร์ต IPv4 ไปยังโฮสต์ IPv6 เท่านั้นซึ่งโดยทั่วไปใช้ socat:

socat TCP4-LISTEN:22,fork,su=nobody TCP6:[2a01:198:79d:1::8]:22

โซลูชันของฉันนั้นเหมือนกันยกเว้นฉันใช้ชื่อโฮสต์ยกเว้น IP แบบคงที่ ระวังอย่าใช้เครื่องหมายวงเล็บเหลี่ยมกับชื่อโฮสต์เพราะจะเป็นการตีความว่าเป็น IP

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.