การกำหนด IP แบบคงที่ให้กับเซิร์ฟเวอร์ Ubuntu 14.04 LTS


66

ฉันติดตั้ง Ubuntu 14.04 LTS Server ในเครื่องของฉันบนฮาร์ดไดรฟ์แยกต่างหากติดตั้ง Windows 7 ของฉันแล้ว Windows OS มีการเชื่อมต่อเครือข่ายเต็มรูปแบบและการเข้าถึงอินเทอร์เน็ตผ่านทางอีเธอร์เน็ต แต่การติดตั้ง Ubuntu ไม่ได้

ฉันรู้ว่าอาจเป็นเพราะเราเตอร์ของฉันซึ่งเห็นคอมพิวเตอร์ 2 เครื่องที่มีที่อยู่ MAC เดียวกันและ DHCP ไม่ทำงาน ฉันจะกำหนด IP ทั่วไปให้กับเครื่องเพื่อให้ทั้งสองพาร์ติชันสามารถใช้เครือข่ายของฉันได้อย่างไร ฉันยังใหม่กับ Ubuntu และฉันไม่สามารถหาไฟล์ที่จะแก้ไขเพื่อให้ฉันสามารถกำหนด IP แบบคงที่ได้


1
สวัสดีและยินดีต้อนรับสู่ออสเตรเลีย ฉันหลงทางจริงๆเมื่อคุณพูดว่า Windows & Ubuntu บนพาร์ติชันแยก เพราะมันจะต้องเป็นบูตคู่ซึ่งจะทำงานแยกต่างหากหรืออย่างอื่นจะต้องเป็น VM (เครื่องเสมือน) คุณช่วยอธิบายรายละเอียดเกี่ยวกับวิธีการใช้งานและกำหนดค่าระบบปฏิบัติการทั้งสองนี้ได้อย่างไร? :)
AzkerM

1
คุณจะมีปัญหากับสองเครื่องที่เชื่อมต่อพร้อมกันที่มีที่อยู่ MAC เดียวกัน แต่ไม่ได้หากพวกเขากำลังทำงานในเวลาที่ต่างกัน ดังนั้นปัญหาของคุณน่าจะอยู่ที่อื่นถ้าฉันเข้าใจดี (และแม้ว่าคุณจะมีเซิร์ฟเวอร์ใน VM, VM ก็จะแก้ปัญหา MAC ให้คุณได้ แต่ VM แต่ละตัวมี MAC เฉพาะของตัวเอง)
Rmano

ดู help.ubuntu.com/14.04/serverguide/network-configuration.html เราเตอร์ไม่เห็นคอมพิวเตอร์สองเครื่อง มันเห็นอินเทอร์เฟซการ์ดเดียวกัน (NIC) ไม่ว่าจะทำงานอยู่ที่ใด
belacqua

คำตอบ:


109

ฉันไม่แน่ใจว่าสิ่งนี้จะแก้ปัญหาของคุณหรือไม่ แต่นี่ตอบคำถามของคุณและฉันคิดว่ามันคุ้มค่ากับการยิง

การกำหนด IP /etc/network/interfacesแบบคงที่คุณจำเป็นต้องแก้ไข

eth0อินเตอร์เฟซที่อาจจะเรียกได้ว่า

รายการปัจจุบันจะมีลักษณะดังนี้:

auto eth0
iface eth0 inet dhcp

คุณจะต้องเปลี่ยนสิ่งนี้เป็น:

auto eth0
iface eth0 inet static
   address 10.253.0.50
   netmask 255.255.255.0
   network 10.253.0.0
   gateway 10.253.0.1
   dns-nameservers 8.8.8.8

คุณจะต้องเปลี่ยนตัวเลขรอบ ๆ ทั้งนี้ขึ้นอยู่กับเครือข่ายของคุณ แต่คุณสามารถค้นหาข้อมูลโดยตรวจสอบipconfigจาก Windows

ตรวจสอบให้แน่ใจว่าคุณเลือกที่อยู่นอกพื้นที่ที่อยู่ของเซิร์ฟเวอร์ DHCP

จากนั้นเริ่มระบบเครือข่ายsudo service networking restartใหม่ ถ้านั่นทำให้คุณมีปัญหาให้รีบูตเครื่อง


@ dan08- ฉันเชื่อว่าจำเป็นต้องใช้ dns-nameservers เช่นกัน ฉันขอแนะนำให้คุณแก้ไขคำตอบของคุณ
chili555

24
รีสตาร์ทeth0ด้วยsudo ifdown eth0 && sudo ifup eth0แทนที่จะเป็นคำสั่งสุดท้าย
Kenny Evitt

ในเกตเวย์ env ของฉันลงท้ายด้วย. 254 ไม่แน่ใจว่าสิ่งนี้ใช้ได้กับทุกคนหรือไม่ นอกจากนั้นคำตอบนี้ใช้ได้กับ 14.14
mau

1
ไม่ทำงานโดยฉันฉันยังได้ DHCP IP น่าเสียดายที่มันมาจากอุปกรณ์ไฮบริดโมเด็ม + เราเตอร์ซึ่งไม่จำเป็นต้องตั้งค่า IP แบบคงที่ตามที่อยู่ MAC : SI อาจจำเป็นต้องซื้อเราเตอร์ : S ตามifdown eth0อินเตอร์เฟสไม่ได้ถูกกำหนดค่า
inf3rno

แต่ตอนนี้เครือข่ายจะเริ่มโดยอัตโนมัติ
Allan Ruin

9

ตั้งค่าการเปลี่ยนแปลงที่อยู่ IP ของคุณ/etc/network/interfacesเป็น ตัวอย่าง:

auto eth0
iface eth0 inet static

address 192.168.1.128
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1

อย่าให้การกำหนดค่า DNS ของคุณเป็น/etc/resolv.confเพราะในขณะที่เรารีสตาร์ทเซิร์ฟเวอร์บางครั้งการกำหนดค่าจะถูกลบ

ดังนั้นใช้vim /etc/resolvconf/resolv.conf.d/base(ในขณะที่อัปเดตการกำหนดค่าในสิ่งนี้มันจะไม่ถูกลบออก)

ตัวอย่าง:

search  (domain name)
nameserver 8.8.8.8
nameserver 8.8.4.4

บันทึกแล้วรีสตาร์ทเซิร์ฟเวอร์ของคุณปัญหานี้คงที่ของฉัน! :)


3
เปลือยในใจว่าชื่ออุปกรณ์ของคุณสามารถอื่น ๆ eth0กว่า เหมืองแร่เป็นและenp1s7 enp2s15ฉันมีการ์ด LAN 2 อัน
Vladimir Vukanac

8

ฉันพบว่าฉันต้องรวมการตั้งค่า dns:

auto lo enp0s25
iface lo inet loopback
iface enp0s25 inet static
    address 192.168.1.128
    netmask 255.255.255.0
    gateway 8.8.8.8.7
    dns-search example.com
    dns-nameservers 8.8.8.8 8.8.4.4

ดูhttps://help.ubuntu.com/lts/serverguide/network-configuration.html


คุณไม่มีเกตเวย์
Pavel Niedoba

ใช่ขอบคุณ @Pavel Niedoba ตอนนี้ที่ฉันดูเซิร์ฟเวอร์ของฉันอย่างใกล้ชิดฉันไม่แน่ใจว่าฉันพลาดมันไปได้อย่างไร แก้ไขแล้ว.
user8128167

1
8.8.8.8.7 ไม่ใช่ที่อยู่ IP ที่ถูกต้อง
papaiatis

0

เปลี่ยนการกำหนดค่าอินเตอร์เฟส:

$ sudo nano /etc/network/interfaces

จากนั้นแทนที่คอนฟิกูเรชันต่อไปนี้:

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto ens160
iface ens160 inet static
# Enter your specific IP address
        address 192.168.1.130
        netmask 255.255.255.0
        gateway 192.168.1.1
        dns-nameservers 8.8.8.8 8.8.4.4

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

$ sudo service networking restart

หรือ

$ sudo ifdown ens160; ifup ens160

หากคุณพบข้อผิดพลาดให้ทำมันคำสั่ง:

$ ip addr flush dev ens160


[ หมายเหตุ ]:

  • ens160เป็นชื่ออีเธอร์เน็ตของฉันคุณสามารถตรวจสอบผ่าน$ ifconfigคำสั่ง
  • นี้ทำงานและทดสอบในอูบุนตู 14.04และ16.04
  • นี่คือวิธีการกำหนดค่าUbuntu 18.04
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.