ตำแหน่งของ dhclient.conf


12

ฉันต้องการตรวจสอบการตั้งค่า DHCP ของไคลเอ็นต์ซึ่งฉันคาดว่าจะอยู่ในไฟล์ /etc/dhcp/dhclient.confแต่ไม่มีไฟล์ดังกล่าว

ไฟล์นี้อยู่ในตำแหน่งใดของ RHEL 6 บน 64 บิต?


คำถามที่ถามเมื่อปีที่แล้วฉันรู้ แต่ฉันแค่ต้องการเพิ่มสองเซ็นต์ของฉัน: ทำไมไม่ใช้locate dhclient.confหรือfind / -iname dhclient.conf -print? หรือแม้แต่เรียบง่าย แต่สกปรกกว่าlocate dhclientหรือlocate dhcp
Sergiy Kolodyazhnyy

คำตอบ:


10

เคล็ดลับที่ฉันมักจะใช้คือดูที่ผลลัพธ์ของคำสั่งนี้ที่นี่ฉันกำลังเรียกใช้บน CentOS 6 แต่มันก็ควรจะใช้ได้กับคุณบน RHEL ด้วยเช่นกัน:

$ ps -eaf | grep dhcli
root      1044     1  0 Jan17 ?        00:00:00 /sbin/dhclient -1 -q -cf /etc/dhcp/dhclient-eth0.conf -lf /var/lib/dhclient/dhclient-eth0.leases -pf /var/run/dhclient-eth0.pid eth0
root      3771  3738  0 19:00 pts/0    00:00:00 grep dhcli

ถ้าคุณสังเกตเห็นในการส่งออกไฟล์ที่คุณกำลังมองหาที่เรียกว่าและไม่/etc/dhcp/dhclient-eth0.conf dhclient.confแต่นี่เป็นเพียงการบอกคุณบางส่วนของเรื่อง หากคุณต้องการฉีดการตั้งค่าเพิ่มเติมdhclientเมื่อเริ่มต้นใช้งานโปรดอ้างถึงเอกสารทางการของ RHEL 6 อย่างเป็นทางการที่นี่หัวข้อ: 14.3 การกำหนดค่าไคลเอ็นต์ DHCP

นอกจากนี้หากคุณศึกษาหน้าคู่มือสำหรับdhclientคุณจะสังเกตเห็นบิตนี้สำหรับ-cfสวิตช์:

-cf <config-file>
      Path to the client configuration file.  If unspecified, the default 
      /etc/dhcp/dhclient.conf is used.

ดังนั้นไฟล์dhclient.confไม่ได้ไฟล์ที่คุณกำลังมีแนวโน้มที่มองหามันเป็นสิ่งที่เชื่อมต่อคุณกำลังทำงานdhclientอยู่ในกรณีนี้ดังนั้นไฟล์จะเป็นeth0dhclient-eth0.conf

ขุดลึกลงไป

หากคุณดูที่สคริปต์เริ่มต้นสำหรับเครือข่ายคุณจะเจอไฟล์/etc/sysconfig/network-scripts/ifup-ethนี้ การมองเข้าไปข้างในจะแสดงให้คุณเห็นว่าเกิดอะไรขึ้นถ้าคุณสนใจ:

...
# allow users to use generic '/etc/dhclient.conf' (as documented in manpage!) 
# if per-device file doesn't exist or is empty
if [ -s /etc/dhcp/dhclient-${DEVICE}.conf ]; then
   DHCLIENTCONF="-cf /etc/dhcp/dhclient-${DEVICE}.conf";
elif [ -s /etc/dhclient-${DEVICE}.conf ]; then
   DHCLIENTCONF="-cf /etc/dhclient-${DEVICE}.conf";
else
   DHCLIENTCONF='';
fi;
...

ดังนั้นคุณสามารถสร้างdhclient.confไฟล์ของคุณเองและลบอินเทอร์เฟซเฉพาะที่สร้างขึ้นสำหรับคุณโดยระบบ


5

RHEL 6 และใหม่กว่าใช้ NetworkManager โดยค่าเริ่มต้นซึ่งสร้างการกำหนดค่า dhclient ได้อย่างรวดเร็ว

คุณจะพบไฟล์ใน/var/lib/NetworkManager/dhclient-*.confแต่คุณไม่สามารถเปลี่ยนไฟล์นี้เพราะมันถูกสร้างขึ้นโดยอัตโนมัติ ตรวจสอบเอกสาร NetworkManager เกี่ยวกับวิธีการตั้งค่าสถานะต่าง ๆ

หากคุณปิด NetworkManager คำตอบของซิมจะมีผล


1

ในการติดตั้ง RHEL 7.5 สด /etc/dhcp/dhclient.conf ไม่มีอยู่ แต่ถ้าคุณสร้างมันด้วยตัวเลือกที่คุณต้องการนั่นดูเหมือนจะใช้ได้ ฉันจะเดิมพันมันใช้งานได้กับ RHEL 6 เช่นกัน

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