Score:0

IP รองไม่สามารถ ping จากอินเทอร์เน็ต - Ubuntu 20.04 โดยใช้ netplan บนเซิร์ฟเวอร์ Hetzner

ธง in

ให้ฉันเริ่มพูดว่าฉันไม่ใช่ผู้เชี่ยวชาญด้านเครือข่าย อย่างที่บอก ฉันต้องการความช่วยเหลือที่นี่ เพราะฉันปวดหัวกับปัญหานี้มาสองวันแล้ว ฉันมีคำถามหลายข้อแต่จะเน้นเฉพาะข้อใดข้อหนึ่งเท่านั้น

ฉันสั่งซื้อเซิร์ฟเวอร์รูท hetzner และติดตั้ง Ubuntu 20.04 หลังจากที่ฉันสั่งซื้อ IP รองตามที่ต้องการสำหรับการตั้งค่านักเทียบท่าที่ฉันต้องการให้คอนเทนเนอร์สองคอนเทนเนอร์เข้าถึงได้โดยตรงจากที่อยู่ IP ทั้งสองนี้ ที่อยู่ IP มีทั้ง /32 ที่อยู่สาธารณะที่กำหนดโดย Hetzner ที่อยู่ IP หลักของฉันสามารถเข้าถึงได้จากอินเทอร์เน็ต ฉันสามารถ ping จากภายนอกได้

หลังจากขอ IP ที่สอง ฉันได้รับอีเมลจาก Hetzner ว่าคำสั่งของฉันสำเร็จ และฉันสามารถกำหนดค่า IP ที่สองของฉันได้ ในเอกสารของ Hetzner ฉันอ่านว่ามันควรจะง่ายเหมือนกับการเพิ่มที่อยู่ IP ที่สองใน ที่อยู่ ส่วนใน /etc/netplan/01-netcfg.yaml. ไฟล์นี้มีลักษณะดังนี้:

เครือข่าย:
  รุ่น: 2
  เรนเดอร์: เครือข่าย
  อีเธอร์เน็ต:
    enp9s0:
      ที่อยู่:
        - 50.50.50.201/32
        - 50.50.50.199/32
      เส้นทาง:
        - ในลิงค์: จริง
          ถึง: 0.0.0.0/0
          ผ่าน: 50.50.50.193
      เนมเซิร์ฟเวอร์:
        ที่อยู่:
          - ...

หลังจากบันทึกไฟล์ที่ฉันเรียกใช้ ลอง netplan ที่แจ้งเกิดและประสบความสำเร็จ เข้าสู่ เพื่อบันทึกการกำหนดค่าใหม่ วิ่ง ไอพีแอดเดรส ให้ฉัน:

...
2: enp9s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP กลุ่มเริ่มต้น qlen 1000
    ลิงค์/อีเธอร์ a8:a1:22:1f:22:82 brd ff:ff:ff:ff:ff:ff
    inet 50.50.50.201/32 ขอบเขต global enp9s0
       valid_lft ตลอดไป reserved_lft ตลอดไป
    inet 50.50.50.199/32 ขอบเขต global enp9s0
       valid_lft ตลอดไป reserved_lft ตลอดไป
...

ตอนนี้ฉันสามารถ ping ip ที่สอง (.199) จากเซิร์ฟเวอร์ได้สำเร็จ แต่ไม่ใช่จาก www ความคิดใดที่เป็นเช่นนี้ ฉันต้องการให้แน่ใจว่า IP ที่สองของฉันสามารถเข้าถึงได้จากเว็บด้วย ฉันขาดอะไรในการกำหนดค่านี้ ขอบคุณมากล่วงหน้า!

แก้ไข: ฉันกำลังเรียกใช้นักเทียบท่า แต่ ณ จุดนี้ ทุกสิ่งที่ฉันระบุไว้ที่นี่อยู่ในเครื่องโฮสต์ ดังนั้น Docker ยังไม่เกี่ยวข้อง ...

ลิงค์ ip -br ให้ฉัน:

ลิงค์ $ ip -br
lo UNKNOWN 00:00:00:00:00:00 <LOOPBACK,ขึ้น,LOWER_UP> 
enp9s0 ขึ้น a8:a1:22:1f:22:82 <BROADCAST,MULTICAST,UP,LOWER_UP> 
นักเทียบท่า0 ลง 02:42:f8:c5:ee:a9 <ไม่มีผู้ให้บริการ ออกอากาศ มัลติคาสต์ ขึ้น>
br-ef57c188e0de ลง 02:42:dc:79:c6:f6 <ไม่มีผู้ให้บริการ,BROADCAST,MULTICAST,ขึ้น>

และ...

ที่อยู่ $ ip -4 -br
เลย UNKNOWN 127.0.0.1/8 
enp9s0 ขึ้น 50.50.50.201/32 50.50.50.199/32 
นักเทียบท่า0 ลง 172.17.0.1/16
br-ef57c188e0de ลง 172.18.0.1/16

และ...

เส้นทาง $ ip
เริ่มต้นผ่าน 50.50.50.193 dev enp9s0 proto static onlink 
172.17.0.0/16 dev docker0 proto kernel scope ลิงก์ src 172.17.0.1 ลิงก์ดาวน์ 
172.18.0.0/16 dev br-ef57c188e0de ขอบเขตเคอร์เนลโปรโต ลิงก์ src 172.18.0.1 ลิงก์ดาวน์ 

และ...

กฎ $ ip
0: จากการค้นหาทั้งหมดในท้องถิ่น
32766: จากหลักการค้นหาทั้งหมด
32767: จากค่าเริ่มต้นการค้นหาทั้งหมด

และ...

$ ip ใกล้
172.18.0.2 dev br-ef57c188e0de ล้มเหลว
50.50.50.193 dev enp9s0 lladdr a8:a1:22:1f:22:82 เข้าถึงได้
fe80::1 dev enp9s0 lladdr a8:a1:22:1f:22:82 เราเตอร์ STALE

และในที่สุดก็...

$ iptables-บันทึก -c
# สร้างโดย iptables-save v1.8.4 ในวันเสาร์ที่ 14 พฤษภาคม 17:40:11 2022
*กรอง
: ยอมรับอินพุต [1021:88276]
:ส่งต่อ [233:12218]
: ยอมรับเอาต์พุต [920:161517]
:นักเทียบท่า - [0:0]
:DOCKER-ISOLATION-STAGE-1 - [0:0]
:DOCKER-ISOLATION-STAGE-2 - [0:0]
:นักเทียบท่า-ผู้ใช้ - [0:0]
[12631:643908] -A FORWARD -j นักเทียบท่า-ผู้ใช้
[12631:643908] -A ไปข้างหน้า -j นักเทียบท่า-ISOLATION-STAGE-1
[105:5500] -A ส่งต่อ -o br-ef57c188e0de -m conntrack --ctstate ที่เกี่ยวข้อง ก่อตั้ง -j ยอมรับ
[0:0] -A ไปข้างหน้า -o br-ef57c188e0de -j นักเทียบท่า
[6:324] -ไปข้างหน้า -i br-ef57c188e0de ! -o br-ef57c188e0de -j ยอมรับ
[0:0] -A ไปข้างหน้า -i br-ef57c188e0de -o br-ef57c188e0de -j ยอมรับ
[521962:778892991] -A FORWARD -o docker0 -m conntrack --ctstate RELATED,ESTABLISHED -j ยอมรับ
[0:0] -A ไปข้างหน้า -o นักเทียบท่า 0 -j นักเทียบท่า
[132612:7158451] -A FORWARD -i docker0 ! -o นักเทียบท่า 0 -j ยอมรับ
[0:0] -A FORWARD -i docker0 -o docker0 -j ยอมรับ
[6:324] -A DOCKER-ISOLATION-STAGE-1 -i br-ef57c188e0de ! -o br-ef57c188e0de -j DOCKER-ISOLATION-STAGE-2
[132612:7158451] -A DOCKER-ISOLATION-STAGE-1 -i docker0 ! -o docker0 -j DOCKER-ISOLATION-STAGE-2
[686521:790836880] -A DOCKER-ISOLATION-STAGE-1 -j ผลตอบแทน
[0:0] -A DOCKER-ISOLATION-STAGE-2 -o br-ef57c188e0de -j DROP
[0:0] -A DOCKER-ISOLATION-STAGE-2 -o docker0 -j DROP
[132618:7158775] -A DOCKER-ISOLATION-STAGE-2 -j ผลตอบแทน
[709846:791932195] -A DOCKER-USER -j ผลตอบแทน
ให้สัญญา
# เสร็จสิ้นในวันเสาร์ที่ 14 พฤษภาคม 17:40:11 น. 2565
# สร้างโดย iptables-save v1.8.4 ในวันเสาร์ที่ 14 พฤษภาคม 17:40:11 2022
*แนท
: ยอมรับ [585:28528]
: ยอมรับอินพุต [357:16571]
: ยอมรับเอาต์พุต [12:720]
:หลังยอมรับ [12:720]
:นักเทียบท่า - [0:0]
[25260:1227195] -A PREROUTING -m addrtype --dst-type LOCAL -j DOCKER
[3:252] -A เอาท์พุต ! -d 127.0.0.0/8 -m addrtype --dst-type LOCAL -j DOCKER
[3:180] -A โพสต์ -s 172.18.0.0/16 ! -o br-ef57c188e0de -j สวมหน้ากาก
[64:3912] -A โพสต์ -s 172.17.0.0/16 ! -o docker0 -j สวมหน้ากาก
[0:0] -นักเทียบท่า -i br-ef57c188e0de -j ผลตอบแทน
[0:0] -A DOCKER -i นักเทียบท่า 0 -j RETURN
ให้สัญญา
# เสร็จสิ้นในวันเสาร์ที่ 14 พฤษภาคม 17:40:11 น. 2565

นอกจากนี้ ฉันยังไม่ได้ตั้งค่ากฎไฟร์วอลล์ในฝั่ง Hetzner อีกด้วย ขอบคุณที่สละเวลา!

A.B avatar
cl flag
A.B
สิ่งนี้ควรจะใช้งานได้ (เพราะมีพารามิเตอร์ onlink ที่อนุญาตให้มีเกตเวย์โดยไม่มีเส้นทาง LAN) คุณควรให้ข้อมูลเพิ่มเติม: `ip -br link; ที่อยู่ ip -4 -br; เส้นทาง ip; กฎไอพี; ไอพีใกล้เคียง`.นอกจากนี้ในกรณีที่ตรวจสอบกฎไฟร์วอลล์ ดังนั้น: `iptables-save -c` ด้วย หมายเหตุ: นักเทียบท่าจะไม่ช่วยแก้ไขปัญหาเครือข่าย หากคุณลืมแจ้งว่าบริการของคุณล้าหลัง Docker ก็ถึงเวลาที่ต้องบอกและอธิบาย: เรื่องนี้อาจเป็นเรื่องสำคัญ
AGI_rev avatar
in flag
ฉันแก้ไขคำถามด้วยข้อมูลเพิ่มเติมที่คุณถาม ขอบคุณสำหรับเวลาของคุณ ;)
A.B avatar
cl flag
A.B
มันควรจะทำงาน คุณควรเปรียบเทียบจากฝั่งเซิร์ฟเวอร์เนื่องจากง่ายกว่าจากระยะไกล: `ping 50.50.50.193` vs `ping -I 50.50.50.199 50.50.50.193` and `traceroute -n 8.8.8.8` vs `traceroute -s 50.50.50.199 8.8 .8.8`. คุณสามารถเรียกใช้พร้อมกันบางอย่างเช่น `traceroute -l -n -s0 -e -p -i enp9s0 arp หรือ icmp` และดูว่ามีบางอย่างผิดปกติหรือแตกต่างกันระหว่างทั้งสองกรณีหรือไม่
Score:0
ธง in

ขอบคุณสำหรับความช่วยเหลือของคุณทุกคนและโดยเฉพาะอย่างยิ่ง เอบี

ปิงยังไม่ทำงาน ฉันอ่านเอกสารของ Hetzner ทั้งหมดและไม่พบเบาะแสใดๆ จนกระทั่งฉันสะดุดกับโพสต์นี้ Hetzner ip เพิ่มเติม. ก่อนหน้านี้ฉันได้เปิดใช้งานที่อยู่ MAC สำหรับ IP เพิ่มเติมที่ฉันขอ เพราะฉันคิดว่าจำเป็นต้องสร้าง macvlan ในนักเทียบท่า ฉัน ปิดใช้งานที่อยู่ MAC เสมือน ในพอร์ทัลเซิร์ฟเวอร์ Hetzner และตอนนี้ฉันสามารถ ping จากและไปยัง IP เพิ่มเติมได้ สิ่งที่ฉันยังไม่ทราบได้อธิบายไว้ในโพสต์อื่น: การกำหนดที่อยู่ IP 32 ให้กับคอนเทนเนอร์นักเทียบท่า. ความช่วยเหลือใด ๆ ที่มีมากกว่านั้นยินดีต้อนรับ ไชโย!

โพสต์คำตอบ

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