ฉันจะกำหนด IP ตามที่อยู่ MAC ใน dhcpd ได้อย่างไร


10

ฉันจะกำหนดที่อยู่ IP เฉพาะให้กับที่อยู่ mac โดยใช้ dhcpd ได้อย่างไร

จนถึงตอนนี้ฉันได้ลองแล้ว

host blah { hardware ethernet <mac address>; fixed-address <ip address>;}

ใน dhcpd.conf ของฉัน แต่หลังจากรีสตาร์ท dhcpd และเครื่องที่มีที่อยู่ mac ในคำถามฉันเพิ่งได้รับ IP สุ่มอีกครั้ง

คำตอบ:


8

นี่คือรูปแบบที่สมบูรณ์แบบอย่างสมบูรณ์แบบ - ฉันใช้เหมือนกันทุกประการ เฉพาะฉันต่อท้ายความคิดเห็นในตอนท้ายของบรรทัด (นอกเหนือจาก) ข้อความที่ตัดตอนมาจากการทำงานdhcpd.conf:

host wrt45gl-etika  { hardware ethernet 00:21:29:a1:c3:a1; fixed-address ---.219.43.135; } # MSIE routeris WRT54GL

ในฐานะที่เป็น @Christoph กล่าวถึงอาจมีตัวเลือกทั่วโลกประกาศ (หรือค่าเริ่มต้นบริการที่ใช้) ซึ่งอาจส่งผลกระทบต่อวิธีที่ได้รับมอบหมาย IP / อาจแทนที่มัน

ขณะย้ายจากdhcp3-server (v3) ไปยังisc-dhcp-server (v4) ฉันต้องเพิ่มตัวเลือกที่จำเป็นและเขียนประกาศใหม่ แต่โครงสร้างของไฟล์ปรับแต่งนั้นเรียบง่าย:

#
# Sample configuration file for ISC dhcpd for Debian
#

# The ddns-updates-style parameter controls whether or not the server will
# attempt to do a DNS update when a lease is confirmed. We default to the
# behavior of the version 2 packages ('none', since DHCP v2 didn't
# have support for DDNS.)

ddns-update-style none;

# option definitions common to all supported networks...

option domain-name "mf.vu.---";
option domain-name-servers ---.219.80.11, ---.219.80.2, ---.171.22.22;

default-lease-time 2678400;
max-lease-time 2678400;

# If this DHCP server is the official DHCP server for the local
# network, the authoritative directive should be uncommented.

authoritative;

# Use this to send dhcp log messages to a different log file (you also
# have to hack syslog.conf to complete the redirection).

log-facility local7;


# The subnet that shares this physical network

shared-network TOTAL_MF {
 server-name "letta.mf.vu.--";

 subnet ---.219.43.128 netmask 255.255.255.192 {
  option routers ---.219.43.190;
  option broadcast-address ---.219.43.191;

  group {
    host wrt45gl-etika  { hardware ethernet 00:21:29:a1:c3:a1; fixed-address ---.219.43.135; } # MSIE routeris WRT54GL
    # ...
    host saulute        { hardware ethernet 00:21:28:10:f4:16; fixed-address ---.219.43.189;  } # Virtual Qemu PC NIC
  }
 }

 subnet 172.16.43.128 netmask 255.255.255.192 {
  option routers 172.16.43.129;
  option broadcast-address 172.16.43.191;

  group{
    host ligo           { hardware ethernet 08:00:20:7A:E2:70; fixed-address 172.16.43.179;   } #a225 ligo
    # ...
    host vumfsa2        { hardware ethernet 00:80:48:8d:12:f0; fixed-address 172.16.43.140;   } # 118
  }
 }
}

ที่นั่นฉันไม่ใช้poolไม่มีrangeการประกาศ มีการประกาศเครือข่ายย่อยเพียงสองรายการเท่านั้น (หนึ่งรายการตามด้วยอีกเครือข่ายหนึ่ง)

ที่นั่นฉันไม่ได้สุ่ม IP ที่กำหนดให้กับโฮสต์ของฉันซึ่งประกาศไว้ที่นี่ (เชื่อมโยงกับ MAC)


ฉันสามารถใช้โฮสต์ที่ไม่มีซับเน็ตหรือไม่ ฉันจำเป็นต้องตั้งค่าการออกอากาศจะเป็นเช่นเดียวกับ IP ของตัวเองผมก็ต้องตั้ง netmask 255.255.255.255จะเป็น ฉันยังต้องการบางอย่างpost-up route addและpre-down route delทำงาน ฉันจะทำสิ่งเหล่านี้ได้หรือไม่?
Qian Chen

@ElgsQianChen: ฉันคิดว่านี่ไม่เกี่ยวข้องกับหัวข้อ
saulius2

@QianChen คุณจัดการ IP ให้กับซับเน็ตได้255.255.255.255หรือไม่?
saulius2

2

ไม่มีการพูดถึงที่ชัดเจนในdhcpd.confหน้า man (และฉันไม่สามารถลองได้ตอนนี้) แต่ฉันคิดเสมอว่ามีเพียงหนึ่งคำสั่งต่อบรรทัด

host blah { 
    hardware ethernet <mac address>; 
    fixed-address <ip address>;
}

2

ผมไม่ทราบว่า dhcpd.conf ของคุณ แต่ถ้าคุณมีคำสั่งคุณควรเพิ่มallow unknown-clientsallow known-clients

ถ้าฉันจำได้อย่างถูกต้อง IP คงที่ไม่ควรอยู่ในช่วงที่ DHCP-Server ของคุณแจกให้ลูกค้า

เมื่อโฮสต์มีที่อยู่เก่าจาก DHCP-Server เดียวกันเซิร์ฟเวอร์อาจแจกสัญญาเช่าเดิมตราบเท่าที่ถูกต้องนั่นคือเวลาการเช่ายังไม่หมดอายุ

มันจะช่วยถ้าคุณสามารถให้การกำหนดค่าของคุณมากขึ้น


อันที่จริงผมคิดว่าถูกต้องคุณสร้างกลุ่มหรือ subclasses ของลูกค้าที่มีชื่ออยู่ในตัวระบุฮาร์ดแวร์และแล้วให้พวกเขาที่อยู่สระว่ายน้ำปฏิเสธไม่รู้จัก (และที่อยู่ที่สระว่ายน้ำที่แยกต่างหากเพื่อขอใบอนุญาตไม่รู้จักถ้าต้องการ.
quadruplebucky

-3

คุณมีโคลอนมากเกินไป:

จากหน้า dhcpd.conf:

         host ncd1 { hardware ethernet 0:c0:c3:49:2b:57; }

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