คุณกำหนดค่าเดสก์ท็อปสำหรับที่อยู่ IP แบบคงที่ได้อย่างไร


24

ตามค่าเริ่มต้น Ubuntu จะใช้ DHCP และ Gnome NetworkManger เพื่อกำหนดค่าอินเทอร์เฟซ สิ่งนี้ไม่เหมาะสมในหลายกรณี

จะกำหนดค่าเครื่องเดสก์ท็อปสำหรับที่อยู่ IP แบบคงที่ที่ใช้กับผู้ใช้ทั้งหมดได้อย่างไร

พื้นหลังเพิ่มเติม : สำหรับ 99.9% ของผู้ใช้รายการ DHCP แบบคงที่อาจเป็นวิธีที่ง่ายที่สุด แต่ฉันได้พบข้อขัดแย้งกับmythtv-backgroundกระบวนการและการเปลี่ยนแปลงใด ๆ กับส่วนต่อประสาน eth0 หากอินเทอร์เฟซถูกแสดงขึ้น / ลงหลังจากที่ mythtv ทำงานอยู่มันจะหยุดกระบวนการ (ซึ่งจะทำให้ระบบหยุดทำงานชั่วคราว) ดังนั้นคำถามของฉันต้องการที่อยู่ IP แบบคงที่ซึ่งอินเทอร์เฟซถูกนำขึ้นมาพร้อมกับ IP ที่รู้จักและอยู่อย่างถาวร


2
คุณสามารถใช้การสำรอง DHCP ในเราเตอร์ของคุณซึ่งจะสำรอง IP สำหรับคอมพิวเตอร์ของคุณโดยการระบุด้วยที่อยู่ MAC ของ NIC และสิ่งนี้จะทำงานเสมือนว่ามีการตั้งค่า IP แบบคงที่
LFC_fan

1
ขอบคุณเคล็ดลับที่ดีสำหรับใครบางคนที่กำลังมองหาที่อยู่ IP ที่สอดคล้องกัน
cmcginty

คำตอบ:


20

คลิกขวา nm เลือกแก้ไขการเชื่อมต่อ ...ค้นหาอินเทอร์เฟซของคุณคลิกแก้ไข ...คลิกการตั้งค่า IPv4เลือกด้วยตนเองและกำหนดค่าอินเทอร์เฟซของคุณ

ทางเลือกที่จะไปแก้ไข/ etc / เครือข่าย / อินเตอร์เฟซ ตัวอย่างการกำหนดค่าจะเป็น:

auto eth0
iface eth0 inet static
   address 192.168.1.1
    netmask 255.255.255.0
    gateway 192.168.1.1

จากนั้นเรียกใช้

/etc/init.d/networking restart

โปรดทราบว่าสิ่งนี้จะปิดใช้งานนาโนเมตรสำหรับอินเทอร์เฟซนี้และคุณจะต้องลบ (หรือยกเลิกหมายเหตุ) รายการเพื่อเปิดใช้งานนาโนเมตรอีกครั้ง

แก้ไข (ดูที่โพสต์ของ Casey): คุณต้องตั้งค่า DNS หลังจากแก้ไข / etc / network / interfaces:

ตั้งค่าเนมเซิร์ฟเวอร์ที่ต้องการอย่างน้อยหนึ่งรายการใน /etc/resolv.conf:

เนมเซิร์ฟเวอร์ 192.168.1.1


หลังจาก 'การเริ่มระบบเครือข่ายใหม่' เฉพาะอินเทอร์เฟซแท้จริงเกิดขึ้น
cmcginty

2
ชื่ออินเทอร์เฟซ ( eth0ในตัวอย่างของ sBlatt) อาจแตกต่างกันในพีซีของคุณ: eth0เป็นชื่อปกติสำหรับอินเตอร์เฟสอีเธอร์เน็ตแบบผ่านสายแรก; ไม่มีมาตรฐานสำหรับการตั้งชื่ออินเตอร์เฟสไร้สาย คำสั่งip link showจะแสดงรายการอินเตอร์เฟสเครือข่ายพร้อมกับพารามิเตอร์ที่เกี่ยวข้อง
Riccardo Murri

อีกวิธีหนึ่งหลังจากคลิกขวาที่ตัวจัดการเครือข่ายและเลือก "แก้ไขการเชื่อมต่อ" ให้เลือกว่าจะเป็นแบบมีสายหรือไร้สายแล้วคลิก "เพิ่ม" หลังจากเพิ่ม IP แบบคงที่ตามที่ต้องการแล้วให้ปิดกล่องโต้ตอบทั้งหมดแล้วคลิกซ้ายที่ไอคอนตัวจัดการเครือข่าย ตอนนี้คุณจะมีตัวเลือก "Auto Eth0" ซึ่งเป็น DHCP และการเชื่อมต่อที่คุณเพิ่มด้วยตนเอง คุณสามารถทำสิ่งนี้ได้หลายครั้งโดยสร้างรายการที่อยู่ IP คงที่แตกต่างกันสำหรับแต่ละสถานที่หรือสถานการณ์ที่คุณอาจพบว่าตัวเองเข้ามา
Scaine

@ Riccardo ใช่อินเตอร์เฟสของฉันคือ eth0 อย่างที่ฉันบอกว่าการเปลี่ยนแปลงอินเทอร์เฟซเท่านั้นไม่ใช่วิธีแก้ปัญหาที่ใช้งานได้สำหรับฉัน
cmcginty

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

5

อัปเดต/etc/networking/interfacesเพื่อตั้งค่าที่อยู่คงที่:

auto eth0
iface eth0 inet static
    address 192.168.0.10
    netmask 255.255.255.0
    gateway 192.168.0.1

ตั้งค่าเนมเซิร์ฟเวอร์ที่ต้องการอย่างน้อยหนึ่งรายการใน/etc/resolv.conf:

nameserver 192.168.0.1

คุณต้องป้องกันไม่ให้gnome-network-managerพยายามeth0เชื่อมต่อ:

sudo apt-get remove network-manager network-manager-gnome

กำหนดที่อยู่ IP แบบคงที่โดยการรีสตาร์ทระบบย่อยเครือข่าย:

sudo invoke-rc.d networking restart

5
อย่าลบผู้จัดการเครือข่าย! คุณเสี่ยงต่อการสิ้นสุดโดยไม่มีการเชื่อมต่ออินเทอร์เน็ตเลยหากคุณทำผิดพลาดในการตั้งค่า IP แบบคงที่ (และคุณไม่สามารถแก้ไขได้)
Riccardo Murri

1
คุณสามารถบอก NetworkManager ไม่ให้นำอินเทอร์เฟซขึ้นมาโดยอัตโนมัติ (คลิกขวา -> แก้ไขการเชื่อมต่อ ... -> เลือกหนึ่ง -> แก้ไข ... -> คลิกที่ช่องทำเครื่องหมายเชื่อมต่อโดยอัตโนมัติ ); วิธีนี้คุณยังสามารถติดตั้งตัวจัดการเครือข่ายและเปิดใช้งานอินเตอร์เฟสด้วยตนเองผ่านifup/ifdown
Riccardo Murri

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

ไม่ควร/etc/networking/interfacesจะเป็น/etc/network/interfaces?
CJBS

1

หากคุณมีเราเตอร์เล็ก ๆ น้อย ๆ ลงชื่อเข้าใช้ (เช่นเบราว์เซอร์http://192.168.1.1จากคุณ) ให้บันทึกที่อยู่เซิร์ฟเวอร์ DNS ปัจจุบัน Reserver อีกหนึ่งที่อยู่ IP จาก DHCP (เช่น 192.168.1.200-192.168.1.210) หรือปิดการใช้งาน DHCP ทั้งหมดเข้าด้วยกัน

จากเมนูอูบุนตู: ระบบ -> การตั้งค่า -> การเชื่อมต่อเครือข่าย -> อัตโนมัติ eth0 -> แก้ไข -> การตั้งค่า IPV4 -> เปลี่ยนเป็น Manual -> เพิ่ม ip (เช่น 192.168.1.200 สิ่งที่คุณ reservered ด้านบน), netmask 255.255.255.0 ,, และเราเตอร์ภายในที่อยู่สำหรับเส้นทางเริ่มต้น (เช่น 192.168.1.1 สิ่งที่คุณใช้ในการเข้าสู่ระบบ) -> ป้อนที่อยู่เซิร์ฟเวอร์ DNS ที่คุณบันทึกไว้ที่ด้านล่างของหน้าต่าง


ฉันอัปเดตคำถามเล็กน้อยเพื่ออธิบายว่าทำไมโซลูชันนี้จึงใช้งานไม่ได้ ฉันต้องการอินเทอร์เฟซเพื่อติดตามอย่างถาวร
cmcginty

มันจะปรากฏขึ้น @ ที่อยู่นี้เมื่อคุณบูต (ในตัวอย่างนี้ 192.168.0.200) และอยู่อย่างถาวร เราเตอร์ของคุณไม่ได้ตั้งค่าอีกต่อไปผ่าน DHCP มันเป็นรหัสยากในคอมพิวเตอร์

0

1) ตรวจสอบว่าควรตั้งค่าอินเทอร์เฟซใดสมมติว่าอินเทอร์เฟซที่คุณต้องการเปลี่ยนอยู่eth0ในกรณีนี้:

$ ip addr

2) เปิดและแก้ไข/etc/network/interface:

$ sudo gedit /etc/network/interface

3) เพิ่มบรรทัดต่อไปนี้ในไฟล์/etc/network/interface:

auto eth0
iface eth0 inet static
address 192.168.1.22
netmask 255.255.255.0
gateway 192.168.1.1

3) รีสตาร์ทอินเตอร์เฟสของคุณด้วยคำสั่งifdownและifup:

$ sudo ifdown --force eth0
$ sudo ifup --force eth0

PS: ใช้$ sudo systemctl restart networkingหรือ$ sudo ifup eth0 อาจไม่ทำงานเมื่อมีการใช้เครื่องมือเครือข่ายอื่น ๆ โปรดตรวจสอบCan't ifdown eth0 (อินเทอร์เฟซหลัก)

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.