Score:0

การส่งต่อแพ็กเก็ตโดยใช้เซิร์ฟเวอร์หลายเครื่อง

ธง in

ฉันมี IP บล็อกจาก RIR

ฉันใช้ผู้ให้บริการสองรายเพื่อสร้าง anycast เป็น IP "บางส่วน" ฉันจะเรียกสิ่งนี้ว่า A และ B

ฉันต้องการส่งต่อไปยังผู้ให้บริการรายอื่นเมื่อ IP นั้นไม่ได้อยู่ที่ตำแหน่งนั้น ฉันใช้เซิร์ฟเวอร์ Ubuntu สองตัวเพื่อประกาศและส่งต่อแพ็กเก็ต BGP และเครื่อง pfSense ระหว่างผู้ให้บริการ A และปลายทางแบบ unicasted

Anycasted IP ใช้งานได้ดี อย่างไรก็ตาม หากไคลเอ็นต์ใกล้กับผู้ให้บริการ B แพ็กเก็ตนั้นไปไม่ถึงปลายทาง

นี่คือวิธีการกำหนดค่า:

ลูกค้า --> ผู้ให้บริการ B -(GRE, เส้นทางคงที่)-> ผู้ให้บริการ A -(GRE, เส้นทางคงที่)-> pfSense --> จุดสิ้นสุด
                                                                             ^ นี่คือปัญหา

ปัญหาที่แท้จริงคือแพ็กเก็ตไม่ได้ส่งต่อจากผู้ให้บริการ A ไปยัง pfSense ฉันสามารถดูแพ็กเก็ต ICMP ได้ที่เซิร์ฟเวอร์ผู้ให้บริการ tcpdump แต่ไม่ใช่ที่ pfSense tcpdump ฉันอนุญาตไฟร์วอลล์และไม่เห็นบันทึกที่ถูกบล็อก การรับส่งข้อมูลปลายทางทั้งหมดผ่านอุโมงค์ GRE ที่อยู่ระหว่าง pfSense และผู้ให้บริการ A

หากฉันทำการ ping โดยใช้ Provider B Server นั่นก็ใช้งานไม่ได้เช่นกัน อย่างไรก็ตาม หากฉันทำการ ping ด้วย GRE Interface IP ระหว่างผู้ให้บริการ A มันใช้งานได้แม้ว่าจะไม่มี NAT ก็ตาม

แน่นอน ฉันสามารถ ping ไปยังปลายทางได้เมื่อฉันทำการ ping ใกล้กับผู้ให้บริการ A

อะไรใช้งานได้ (ตัวมันเองหมายถึงเซิร์ฟเวอร์ที่ผู้ให้บริการ):

ลูกค้า (หรือตัวมันเอง) -> ผู้ให้บริการ A หรือ B -(GRE, Static Route)-> pfSense -(GRE, Static Route)-> Anycast IP
ลูกค้า (หรือตัวมันเอง) -> ผู้ให้บริการ A -(GRE, Static Route)-> pfSense -(GRE, Static Route)-> Unicast IP ที่ใกล้กับผู้ให้บริการ A
ผู้ให้บริการ B -(GRE, Static Route, GRE IP หรือ IP เครือข่ายย่อยเดียวกัน ยกเว้น Anycasted)-> pfSense -(GRE, Static Route)-> Unicast IP ที่ใกล้กับผู้ให้บริการ A
Unicast IP ที่ใกล้กับผู้ให้บริการ A --> pfSense -(GRE, Static Route)-> ผู้ให้บริการ A
ผู้ให้บริการ B --> เซิร์ฟเวอร์ใกล้กับผู้ให้บริการ B

อะไรไม่ทำงาน:

ลูกค้า (หรือตัวมันเอง) --> ผู้ให้บริการ B -(GRE, เส้นทางคงที่)-> ผู้ให้บริการ A -(GRE, เส้นทางคงที่, การจราจรหยุดที่นี่)-> pfSense -(GRE, เส้นทางคงที่)-> Unicast IP ที่ใกล้กับผู้ให้บริการ A
Unicast IP ที่ใกล้กับผู้ให้บริการ A --> pfSense -(GRE, เส้นทางคงที่)-> ผู้ให้บริการ B --> เซิร์ฟเวอร์ใกล้กับผู้ให้บริการ B --> ผู้ให้บริการ B --> ผู้ให้บริการ A -(การจราจรหยุดที่นี่)-> pfSense --> จุดสิ้นสุด

ที่นี่คือ sysctl -p ผล:

ผู้ให้บริการ ก
net.ipv4.ip_forward = 1
net.ipv6.conf.all.forwarding = 1
net.ipv4.conf.all.accept_redirects = 1
net.ipv6.conf.all.accept_redirects = 1
net.ipv4.conf.all.send_redirects = 1
net.ipv4.conf.all.accept_source_route = 1
net.ipv6.conf.all.accept_source_route = 1
net.ipv6.conf.all.accept_ra = 2
net.core.default_qdisc = ความถี่
net.ipv4.tcp_congestion_control = bbr
ผู้ให้บริการ B
net.ipv4.ip_forward = 1
net.ipv6.conf.all.forwarding = 1
net.ipv4.conf.all.accept_redirects = 1
net.ipv6.conf.all.accept_redirects = 1
net.ipv4.conf.all.send_redirects = 1
net.ipv4.conf.all.accept_source_route = 1
net.ipv6.conf.all.accept_source_route = 1

หากต้องการข้อมูลเพิ่มเติม โปรดแจ้งให้เราทราบ ขอบคุณ.

Score:0
ธง in

ตอนนี้มันได้รับการแก้ไขแล้ว หลังจากที่ฉันปิดใช้งาน rp_filter บนเกตเวย์เหล่านั้น แพ็กเก็ตก็ประมวลผลอย่างถูกต้อง

โพสต์คำตอบ

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