Score:0

พื้นฐานเครือข่าย systemd: ไม่สามารถเปลี่ยนจาก DHCP เป็นที่อยู่ IP แบบคงที่

ธง sa
QF0

ฉันเพิ่งเริ่มใช้ระบบเครือข่าย systemd และไม่สามารถตั้งค่าระบบใหม่ด้วยที่อยู่ IP แบบคงที่ได้ นี่เป็นเซิร์ฟเวอร์เริ่มต้นของ Ubuntu 20.04 และไม่ได้ติดตั้งตัวจัดการเครือข่ายและ ifupdown (ดังนั้นจึงไม่มี /etc/network/interfaces เป็นต้น)

ตามค่าเริ่มต้น เซิร์ฟเวอร์จะบู๊ตโดยเปิดใช้งาน DHCP และรับที่อยู่ IP และทุกอย่างก็ทำงาน ตอนนี้ฉันได้เพิ่มไฟล์ /etc/systemd/network/static.network ซึ่งมีการตั้งค่าพื้นฐาน:

[จับคู่]
ชื่อ=e*

[เครือข่าย]
ที่อยู่=192.168.1.20/24
เกตเวย์=192.168.1.40

ถ้าฉันทำ systemctl รีสตาร์ท systemd-networkd สิ่งนี้จะถูกละเว้นและ สถานะ systemctl แสดงว่าที่อยู่ 192.168.1.10 ถูกกำหนดจาก DHCP (enp1s0: ที่อยู่ DHCPv4 192.168.1.10/24 ผ่าน 192.168.1.40). ฉันได้รับผลลัพธ์เดียวกันหากฉันรีบูต ที่อยู่ยังคงเป็น DHCP หนึ่ง ดูเหมือนว่า static.network ไฟล์กำลังถูกละเว้นโดยสิ้นเชิง แต่กำลังดำเนินการอยู่ - หากฉันเพิ่มข้อผิดพลาดที่ชัดเจนลงในไฟล์ ไฟล์นั้นจะถูกรายงานโดยคำสั่งสถานะความคิดใดที่ฉันทำผิด?

เซิร์ฟเวอร์เป็น VM ที่ทำงานภายใต้ RHEL 8 ซึ่งฉันหวังว่าจะไม่เกี่ยวข้อง

Artur Meinild avatar
vn flag
คุณควรใช้ [netplan.io](https://netplan.io/) เพื่อกำหนดค่าเครือข่ายของคุณบน Ubuntu
QF0 avatar
sa flag
QF0
@ArturMeinild: ศูนย์ข้อมูลไม่กระตือรือร้นในเน็ตแพลน พวกเขาบอกว่าพวกเขามีปัญหากับมัน พวกเขาอยากให้ฉันใช้ /etc/network/interfaces ฉันคิดว่าตัวเลือกที่ดีที่สุดคือการใช้ systemd เนื่องจากเป็นแบบพกพาและ "มาตรฐาน" มากกว่า ฉันคิดว่า.
Random Person avatar
us flag
เฮ้ QF0! การโพสต์ข้ามโดยทั่วไปไม่ถือเป็นแนวปฏิบัติที่ดีใน Stack Exchange ฉันแนะนำให้คุณทำตามนี้: https://meta.stackexchange.com/q/64068 นอกจากนี้ โปรดพิจารณาไปที่หน้า [ทัวร์]
Score:0
ธง sa
QF0

ดูเหมือนว่าข้อผิดพลาดใน 20.04 .เครือข่าย ไฟล์มีไว้เพื่อประมวลผลตามลำดับคำศัพท์ตามข้อมูลที่แยกจากไฟล์ systemd-เครือข่าย เอกสาร:

ไฟล์ .network ถูกอ่านจากไฟล์ที่อยู่ในระบบ ไดเร็กทอรีเครือข่าย /usr/lib/systemd/network และ /usr/local/lib/systemd/network ไดเร็กทอรีเครือข่ายรันไทม์ที่ไม่แน่นอน /run/systemd/network และไดเร็กทอรีเครือข่ายการดูแลระบบโลคัล /etc/systemd/network. ไฟล์คอนฟิกูเรชันทั้งหมดจะถูกจัดเรียงรวมกัน และประมวลผลตามลำดับคำศัพท์โดยไม่คำนึงถึงไดเร็กทอรีที่ พวกเขาอยู่.

แต่ถ้าฉันเปิด systemd-เครือข่าย การดีบัก (ดู ที่นี่ ถ้าไม่รู้วิธี) ปรากฎว่า. ต่ำสุด- ไฟล์ที่เรียงตามตัวอักษรมีความสำคัญกว่า ฉันไม่สามารถแน่ใจได้ทั้งหมด เนื่องจากบันทึกไม่แสดงลำดับการประมวลผล และจะหยุดที่ Hit แรกเท่านั้นสำหรับอินเทอร์เฟซเครือข่ายที่เกี่ยวข้อง

นี่คือสิ่งที่ฉันรู้สำหรับการติดตั้งเซิร์ฟเวอร์ Ubuntu 20.04 ธรรมดา:

  1. มี 5 .เครือข่าย ไฟล์ทั่วทั้งระบบ
  2. หนึ่งในนั้นสร้างโดย netplan ที่รันไทม์และคือ /run/systemd/network/10-netplan-enp1s0.network
  3. ไฟล์ใหม่ของฉันคือ /etc/systemd/network/static.network
  4. บน systemctl รีสตาร์ท systemd-networkd ไฟล์ netplan มีความสำคัญมากกว่าของฉันเอง
  5. ถ้าฉันลบไฟล์ netplan ด้วยตนเอง และรีสตาร์ทระบบเครือข่าย ไฟล์ของฉันจะทำงาน อย่างไรก็ตาม นี่เป็นเพียงชั่วคราวจนกว่าจะรีบูตครั้งถัดไป
  6. ถ้าฉันเปลี่ยนชื่อไฟล์เป็น 05-static.network จากนั้นจะมีความสำคัญเหนือไฟล์ netplan

เอาล่ะ คำสั่งการประมวลผลเสีย เว้นแต่ว่าฉันจะทำอะไรโง่ๆ

ในการแก้ไขชั่วคราว คุณต้องให้ไฟล์ของคุณมีลำดับคำศัพท์ต่ำโดยใส่คำนำหน้าเช่น 05-. อย่างไรก็ตาม การดำเนินการนี้อาจใช้การไม่ได้ในการอัปเดตในอนาคตหากมีการกลับรายการลำดับการประมวลผล การแก้ไขที่ดีกว่าคือการปิดใช้งาน netplan (ไม่แน่ใจว่าจะทำอย่างไร) แต่สิ่งนี้อาจหยุดทำงานหากมีอย่างอื่นตัดสินใจว่าจะต้องสร้าง .เครือข่าย ไฟล์เพื่อชดเชย netplan one ที่ขาดหายไป

แก้ไข - ลบ netplan

คุณสามารถลบ netplan ทั้งหมดได้ด้วย ฉลาดกำจัด netplan.io. อย่างไรก็ตาม นี่อาจไม่ใช่ความคิดที่ดี - มันยังลบออกอีกด้วย cloud-initตัวอย่างเช่น ซึ่งจำเป็นโดย DigitalOcean ดังนั้น:

# ซีดี /etc/netplan
# rm 00-installer-config.yaml
#เน็ตแพลนสมัคร

หลังจากรีบูต คุณจะไม่ได้รับการสร้างขึ้นโดยอัตโนมัติอีกต่อไป .เครือข่าย ไฟล์ และสามารถใช้การตั้งชื่อไฟล์ปกติใน .เครือข่าย ไฟล์ที่ไม่มีข้อขัดแย้ง

โพสต์คำตอบ

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