Score:0

CentOS 8: อะแดปเตอร์เครือข่ายภายนอกสองตัว, ISP สองตัว - ปัญหาการกำหนดเส้นทาง

ธง pr

ที่ให้ไว้: คอมพิวเตอร์ที่ขับเคลื่อนด้วย CentOS 8 พร้อมอะแดปเตอร์เครือข่ายสามตัว

eth0, eth2: ภายนอก เชื่อมต่อกับ ISP ที่แตกต่างกันสองราย
eth1: เผชิญกับเครือข่ายในบ้าน (อินทราเน็ต)

งาน: อนุญาตให้เข้าถึงบริการภายในบางอย่างจาก ISP ทั้งสองมีบริการหลายอย่าง ฉันพูดถึง SSH ด้านล่างเท่านั้น

ในการกำหนดค่าด้านล่าง:
IP1: IP ภายนอกที่ ISP แรก (ISP1) กำหนดให้กับ eth0
Gateway1: IP ของเกตเวย์ที่ให้บริการโดย ISP1
Network1,Netmask1: เกี่ยวข้องกับ IP1
IP2: IP ภายนอกที่ ISP ที่สอง (ISP2) กำหนดให้กับ eth2
Gateway2: IP ของเกตเวย์ที่ให้บริการโดย ISP2
Network2,Netmask2: เกี่ยวข้องกับ IP2
LocalSSHIP: IP ในอินทราเน็ต (eth1) ที่เซิร์ฟเวอร์ SSH กำลังทำงานอยู่

การกำหนดค่าปัจจุบันตามมา ตารางเส้นทาง:

echo "200 isp1" >> /etc/iproute2/rt_tables
echo "201 isp2" >> /etc/iproute2/rt_tables

นโยบายการกำหนดเส้นทาง:
/etc/sysconfig/network-scripts/route-eth0

Network1 dev eth0 src IP1 ตาราง isp1
ค่าเริ่มต้นผ่าน Gateway1 dev eth0 ตาราง isp1

/etc/sysconfig/network-scripts/route-eth2

Network2 dev eth2 src IP2 ตาราง isp2
ค่าเริ่มต้นผ่าน Gateway2 dev eth2 ตาราง isp2

กฎการกำหนดเส้นทาง:
/etc/sysconfig/network-scripts/rule-eth0

จากตาราง IP1/32 isp1

/etc/sysconfig/network-scripts/rule-eth2

จากตาราง IP2/32 isp2

ตัวอย่าง iptables การรับส่งข้อมูลภายนอกส่งต่อไปยังเซิร์ฟเวอร์ SSH ภายในจากทั้งสองอินเทอร์เฟซ:

iptables -A PREROUTING -t nat -i eth0 -p tcp -d IP1 --dport 22 -j DNAT --to LocalSSHIP:22
iptables -A PREROUTING -t nat -i eth2 -p tcp -d IP2 --dport 22 -j DNAT --to LocalSSHIP:22
iptables -A FORWARD -p tcp -d LocalSSHIP --dport 22 -j ยอมรับ

eth0 เป็นเกตเวย์เริ่มต้น:
เส้นทาง $ ip

ค่าเริ่มต้นผ่าน Gateway1 dev eth0 proto static metric 100 
ค่าเริ่มต้นผ่าน Gateway2 dev eth2 proto static metric 101 
...

กฎ $ ip

0: จากการค้นหาทั้งหมดในท้องถิ่น
32764: จากการค้นหา IP2 isp2
32765: จากการค้นหา IP1 isp1
32766: จากหลักการค้นหาทั้งหมด
32767: จากค่าเริ่มต้นการค้นหาทั้งหมด

SNAT ใช้สำหรับทราฟฟิกที่มาจาก eth1:

iptables -t nat -A POSTROUTING -i eth1 -o eth0 -j SNAT --to-source IP1

สถานการณ์ปัจจุบัน:

  1. บริการทั้งหมดที่ส่งต่อจาก eth0 ทำงานได้ตามปกติ
  2. การรับส่งข้อมูลทั้งหมดที่มาจากอินทราเน็ตจะผ่านไปและกลับตามปกติ
  3. ความพยายามทั้งหมดในการเข้าถึงบริการจาก eth2 หมดเวลา

ไม่มีคำแนะนำที่ชัดเจนใน /var/log/messages (เช่น การร้องเรียนเกี่ยวกับ "martian IPs")

ฉันค่อนข้างสูญเสียที่นี่ คำแนะนำทั้งหมดยินดีเป็นอย่างยิ่ง

A.B avatar
cl flag
A.B
สรุปคือต้องจดจำเส้นทาง/เส้นทางเดิมที่ใช้เมื่อติดต่อกับโฮสต์อินทราเน็ตเดียวกัน (เช่น จากที่อยู่ต้นทางอินเทอร์เน็ตเดียวกัน) และดึงข้อมูลที่จดจำนี้กลับมาเพื่อตอบกลับ คุณยังสนใจคำถามนี้อยู่หรือไม่?
pr flag
@A.B ใช่ฉันเป็นเนื่องจากปัญหาไม่ได้รับการแก้ไขอย่างสมบูรณ์

โพสต์คำตอบ

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