GNB เป็น VPN แบบโอเพ่นซอร์สแบบกระจายอำนาจที่ทำการสลับเครือข่ายสามชั้นผ่าน P2P พร้อมความสามารถในการเจาะอินทราเน็ตขั้นสูงสุด
ข้อมูลจะถูกส่งระหว่างโหนด GNB ผ่านโปรโตคอล UDP ในบางสภาพแวดล้อมเครือข่าย เราเตอร์/ไฟร์วอลล์จะใช้นโยบาย QOS สำหรับแพ็กเก็ต UDP ดังนั้น การส่งต่อข้อมูล GNB ผ่านลิงก์ tcp ไม่จำเป็นต้องเปลี่ยนแปลงโปรโตคอลการสื่อสาร GNB และสามารถปรับปรุงการปรับตัวของ เครือข่าย GNB
gnb_udp_over_tcp เป็นบริการที่พัฒนาขึ้นสำหรับ GNB ที่ส่งต่อแพ็กเก็ต UDP ผ่านลิงก์ TCP
ที่อยู่ IP ของโหนด GNB ระยะไกลคือ 192.168.1.25 พอร์ต GNB UDP 9025 GNB TUN ip 10.1.0.25 ไม่จำเป็นต้องปรับไฟล์การกำหนดค่า GNB ระยะไกล
ที่อยู่ IP ของเซิร์ฟเวอร์รีเลย์คือ 192.168.1.11
[gnb_1010]
|
udp
|
[udp_over_tcp udp:127.0.0.1:5001] (./gnb_udp_over_tcp -u -l 5001 192.168.1.11 6000)
|
tcp
|
[udp_over_tcp tcp:192.168.1.11:6000] (./gnb_udp_over_tcp -t -l 6000 192.168.1.25 9025)
|
udp
|
[gnb_1025 udp:192.168.1.25:9025]
ดำเนินการเมื่อ 192.168.1.11
./gnb_udp_over_tcp -t -l 6000 192.168.1.25 9025
ที่อยู่ IP ในเครื่องคือ 192.168.1.10 GNB TUN ip 10.1.0.10
เนื้อหาของ GNB conf/1010/address.conf ท้องถิ่นคือ
n|1025|127.0.0.1|5001
อย่ากำหนดค่าฉันพิมพ์โหนด GNB ใน address.conf
ดำเนินการเมื่อ 192.168.1.10
./gnb_udp_over_tcp -u -l 5001 192.168.1.11 6000
เริ่มโหนด GNB ในเครื่องและ ping 10.1.0.25 เพื่อตรวจสอบว่า ping สามารถทำได้สำเร็จหรือไม่
[netcat] (nc -u 127.0.0.1 5001)
|
udp
|
[udp_over_tcp udp:127.0.0.1:5001] (./gnb_udp_over_tcp -u -l 5001 127.0.0.1 6000)
|
tcp
|
[udp_over_tcp tcp:127.0.0.1:6000] (./gnb_udp_over_tcp -t -l 6000 127.0.0.1 7000)
|
udp
|
[netcat udp:127.0.0.1:7000] (nc -u -l 7000)
ใช้ nc เพื่อตรวจสอบพอร์ต 7000 udp
nc -u -l 7000
เริ่มต้นด้าน tcp ของ gnb_udp_over_tcp: ฟังพอร์ต tcp 6000 แต่ละลิงก์ tcp ที่เชื่อมต่อกับพอร์ตจะสร้างซ็อกเก็ต udp เพื่อสร้างช่องสัญญาณ แพ็กเก็ตที่ได้รับจากลิงก์ tcp จะถูกส่งไปยังพอร์ต UDP 7000 ที่ 127.0.0.1 จากข้อมูลที่ได้รับที่ปลาย udp จะถูกส่งไปยังปลายอีกด้านของลิงค์ tcp ส่วนท้าย TCP ของ gnb_udp_over_tcp สามารถเข้าถึงการเชื่อมต่อ tcp หลายรายการพร้อมกัน และส่งต่อไปยังพอร์ต udp ของที่อยู่ปลายทางเดียวกัน
./gnb_udp_over_tcp -t -l 6000 127.0.0.1 7000
เริ่มต้นจุดสิ้นสุด udp ของ gnb_udp_over_tcp: ฟังพอร์ต udp 5001 สร้างลิงก์ tcp ด้วย 127.0.0.1 พอร์ต tcp 6000 ข้อมูลที่ได้รับจากจุดสิ้นสุด udp จะถูกส่งไปยังปลายอีกด้านหนึ่งของลิงก์ tcp และข้อมูลที่ได้รับจาก tcp ลิงค์ถูกส่งไปยังจุดสิ้นสุด udp
./gnb_udp_over_tcp -u -l 5001 127.0.0.1 6000
ใช้ nc เพื่อเข้าถึงพอร์ต 5001 udp ของ 127.0.0.1 เพื่อตรวจสอบว่าข้อมูลได้รับการส่งต่อสำเร็จหรือไม่
nc -u 127.0.0.1 5001
ข้อสงวนสิทธิ์