วิธีการตั้งค่า IP แบบคงที่ใน Ubuntu Server 12.04


32
sudo apt-get update 
sudo apt-get upgrade
  1. ifconfig

  2. sudo nano /etc/network/interfaces

    auto eth0
    iface eth0 inet static
    address 192.168.1.150
    netmask 255.255.255.0
    network 192.168.2.0
    broadcast 192.168.1.255
    gateway 192.168.2.1
    safe
    
  3. sudo nano /etc/resolv.conf

    Do not edit this file by hand --your changes will be overwritten
    # I add this 
    nameserver 8.8.8.8
    nameserver 8.8.4.4
    
  4. sudo apt-get remove dhcp-client

  5. sudo /etc/init.d/networking restart

    *Running /etc/init.d/networking restart is deprecated because it may 
    not enable again some interfaces
    *Reconfiguring network interfaces...
    ssh stop/waiting
    ssh start/running,process 1438
    

ความผิดพลาดอยู่ที่ไหน ฉันไม่ขี้เกียจ ฉันใช้ Google เป็นเวลา 3 วัน แต่ไม่มีผลลัพธ์ ฉันลองทุกอย่าง

หลังจากรีบูต/etc/resolv.confไฟล์จะกระพริบเป็นสถานะเดิม


อืมความคิดว่าทำไมคุณไม่เพียงแค่ทำทุกอย่างภายใน / etc / เครือข่าย / อินเตอร์เฟซการตั้งค่าโฟลเดอร์เหมือนที่นี่: draalin.com/setting-up-a-static-ip-address-in-ubuntuหรือไม่ก็ทำให้รู้สึกมากขึ้นเพื่อ จริง ๆ แล้วแยกสิ่งต่าง ๆ ตามที่คุณทำในโฟลเดอร์การกำหนดค่า resolv.conf และอินเตอร์เฟสหรือไม่

ฉันทำได้โดยไปที่แท็บเครือข่ายโดยตรงและแก้ไขด้วยตนเอง
poorva

คำตอบ:


16

คำถามนี้มีสองคำถามอิสระ:

resolv.conf รายการที่ได้รับการรีเซ็ตหลังจากรีบูต

วิธี/etc/resolv.confการทำงานเปลี่ยนไปใน Ubuntu 12.04 เพราะนี่คือการดำเนินการfoundations-p-dns-resolving ตามที่อธิบายไว้ที่นี่ https://blueprints.launchpad.net/ubuntu/+spec/foundations-p-dns-resolvingจะเอาชนะข้อ จำกัด resolv.confบางส่วนของแบบคงที่

คุณสามารถรับรายละเอียดเพิ่มเติมได้ที่: http://www.stgraber.org/2012/02/24/dns-in-ubuntu-12-04/

คุณสามารถแทนที่คุณลักษณะใหม่โดยการเอาการเชื่อมโยงสัญลักษณ์/etc/resolv.confและสร้างไฟล์ชื่อ/etc/resolv.confมี แต่ก่อนที่จะทำลิงก์อ้างอิงฉันได้รับด้านบนและดูว่าทำไมมันจึงเป็นกำลังใจอย่างยิ่ง

ที่อยู่ IP กับความขัดแย้งของเครือข่ายและเกตเวย์ (การตั้งค่า IP แบบคงที่) นอกจากนี้pgschkชี้ให้เห็นว่าที่อยู่ IP ของคุณไม่ตรงกับเกตเวย์และรายการเครือข่าย แต่นั่นไม่ได้ทำให้การ/etc/resolv.confไปสู่สถานะดั้งเดิม แต่เหตุผลที่ฉันกล่าวถึงข้างต้น


ให้อภัยฉันข้อผิดพลาดเมื่อเขียนฉันมี 2 เซิร์ฟเวอร์รายละเอียดที่เป็นไปได้ในการลบลิงค์สัญลักษณ์ /etc/resolv.conf และสร้างไฟล์ชื่อ /etc/resolv.conf ที่นั่น ฉันไม่เคยทำแบบนี้มาก่อนโปรด
bemonolit

ฉันขอแนะนำให้ตรวจสอบว่างานอื่น ๆ ที่มีรายชื่ออยู่ในลิงค์ stgraber.org ที่นอกเหนือจากการลบลิงก์สัญลักษณ์ทำงานให้คุณก่อนหรือไม่ แต่ถ้าคุณยังต้องการลบลิงค์คุณสามารถใช้คำสั่งปกติเช่น 'mv /etc/resolv.conf /etc/resolv.conf.ori' หรือ 'rm /etc/resolv.conf' แล้วสร้างใหม่ / etc / resolv.conf โดยใช้โปรแกรมแก้ไขข้อความที่คุณโปรดปราน (เช่น vi หรือ nano)
Jamess

ฉันหวังว่าคุณตั้งใจ /etc/resolv.conf ไม่ /etc/resolv.config ในคำถามข้างต้น
Jamess

ฉันออนไลน์มันเป็นเพียงข้อผิดพลาดขอบคุณและเกี่ยวกับการลบลิงค์> resolvconfig: ข้อผิดพลาด /etc/resolv.conf ไม่ใช่ symlink ไม่ใช่การทำอะไรเลย
bemonolit

6

ที่อยู่เกตเวย์ของคุณอยู่ในเครือข่ายย่อยที่แตกต่างจากที่อยู่ IP ในเครื่องของคุณ:

ที่อยู่ 192.168 1 .150 เกตเวย์ 192.168 2 .1

นอกจากนี้ยังระบุที่อยู่เครือข่ายในซับเน็ต. 2 ด้วย:

เครือข่าย 192.168 2 .0

คุณใช้เครือข่ายย่อย 192.168.1 / 24 หรือเครือข่าย 192.168.2 / 24 หรือไม่?

แก้ไข: เกี่ยวกับ resolv.conf ของคุณ: ไฟล์นี้ส่วนใหญ่จะถูกอัพเดตโดยแพ็คเกจที่แตกต่างกัน (ขึ้นอยู่กับการตั้งค่าของคุณ) ลองระบุเนมเซิร์ฟเวอร์ในไฟล์ / etc / network / interfaces ของคุณ:

dns-nameservers 8.8.8.8 8.8.4.4


sudo nano / etc / network / interfaces # อินเทอร์เฟซเครือข่ายหลักอัตโนมัติที่อยู่ eth0 192.168.1.13 netmask 255.255.255.255 เกตเวย์ 192.168.1.1 เครือข่าย 192.168.1.0 ออกอากาศ 192.168.1.225 dns-nameservers google 8.8.8.8 8.8.4.4 dns ค้นหา mydomaine google com
bemonolit

ปัญหาเดียวกัน * การรัน /etc/init.d/networking resrtart ถูกคัดค้านเนื่องจากอาจไม่เปิดใช้งานอินเทอร์เฟซบางอย่างอีกครั้ง * การกำหนดค่าอินเทอร์เฟซเครือข่ายอีกครั้ง ...
bemonolit

* กำลังทำงาน /etc/init.d/networking resrtart ถูกคัดค้านเนื่องจากอาจไม่เปิดใช้งานอินเทอร์เฟซบางอย่างอีกครั้ง * การกำหนดค่าอินเทอร์เฟซเครือข่ายใหม่ ...
bemonolit

1

คุณสามารถลองตัวเลือกนี้:

  • เอา/etc/resolv.confแล้ว creat resolv.confใหม่

  • sudo nano /etc/resolv.conf หลังจากนั้นเพิ่มธง:

  • sudo chattr +i /etc/resolv.conf- ด้วยการ+iตั้งค่าสถานะนี้แม้รากไม่สามารถสัมผัสไฟล์นี้ แต่ถ้าคุณต้องการเปลี่ยนเนมเซิร์ฟเวอร์ให้เปลี่ยนค่าสถานะเป็น:

  • sudo chattr -i /etc/resolv.confnameserverแล้วเพิ่มใหม่ของคุณ

จากนั้นลองรีบูตและดูว่าเกิดอะไรขึ้น :)

ฉันหวังว่านี่จะช่วยแก้ปัญหาของคุณ

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