Score:0

เซิร์ฟเวอร์ dhcpd ตรวจหา mac ไม่ถูกต้อง

ธง jp

ในการกำหนดค่า dhcp ของฉัน ฉันได้ใช้งาน hook เพื่อบันทึกข้อมูลอุปกรณ์ ปัญหาของฉันคือที่อยู่ mac บางส่วนไม่ถูกต้อง:

8:7ค:39:cf:b6:3ฉ - สิ่งนี้ควรเริ่มต้นด้วยศูนย์

8:d0:b7:52:f9:68 - นอกจากนี้

ของฉัน dhcpd.conf

ตั้ง clientmac = binary-to-ascii(16,8,":",substring(hardware,1,6));

djdomi avatar
za flag
เตือนว่าคุณควรเพิ่มเช่นระบบปฏิบัติการที่คุณใช้และคุณกำลังพยายามแก้ไขอะไร
Score:1
ธง in

ขึ้นอยู่กับว่าคุณใช้อะไรในการแยกวิเคราะห์ ใครๆ ก็เถียงได้ว่ามันถูกต้องสมบูรณ์ที่จะละทิ้งเลขศูนย์นำหน้า และนั่นคือสิ่งที่เราทำเกือบตลอดเวลาเพราะไม่มีคำจำกัดความว่าควรมีตัวเลขกี่หลัก

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

ในกรณีนี้ isc มีบทความ KB เกี่ยวกับเรื่องนี้

นี่ไม่ใช่จุดบกพร่อง ปัญหาคือฟังก์ชัน binary-to-ascii ไม่ "รู้" อะไรเกี่ยวกับการใช้เลขฐานสองที่แปลงแล้ว และเป็นเรื่องปกติที่จะใส่เลขศูนย์นำหน้าเมื่อพิมพ์ค่าตัวเลข

อย่างไรก็ตาม ด้วยการปรับแต่งเพิ่มเติมเล็กน้อย ก็ยังเป็นไปได้ที่จะได้ผลลัพธ์ที่ต้องการ:

ตั้ง foo = concat (
คำต่อท้าย (concat ("0", binary-to-ascii (16, 8, "", สตริงย่อย (ฮาร์ดแวร์,1,1))),2), ":",
คำต่อท้าย (concat ("0", binary-to-ascii (16, 8, "", สตริงย่อย (ฮาร์ดแวร์,2,1))),2), ":",
คำต่อท้าย (concat ("0", binary-to-ascii (16, 8, "", สตริงย่อย (ฮาร์ดแวร์,3,1))),2), ":",
คำต่อท้าย (concat ("0", binary-to-ascii (16, 8, "", สตริงย่อย (ฮาร์ดแวร์,4,1))),2), ":",
คำต่อท้าย (concat ("0", binary-to-ascii (16, 8, "", สตริงย่อย (ฮาร์ดแวร์,5,1))),2), ":",
คำต่อท้าย (concat ("0", binary-to-ascii (16, 8, "", สตริงย่อย (ฮาร์ดแวร์,6,1))),2)
);

(ดำเนินการโดยการแปลง "คอมโพเนนต์" แต่ละรายการแยกจากกัน เพิ่มศูนย์นำหน้าเข้าไป (ในกรณีที่จำเป็นต้องใช้) นำอักขระฐานสิบหกสองตัวสุดท้ายมาต่อเข้าด้วยกันอีกครั้ง)

jp flag
ขอขอบคุณที่สละเวลาตอบปัญหานี้ ทางออกที่ดี
in flag
หากวิธีนี้ช่วยแก้ปัญหาของคุณได้ โปรดทำเครื่องหมายว่าเป็นคำตอบ ;)
jp flag
ยังไม่ ฉันยังคงมองหาวิธีแก้ปัญหาที่ดีกว่า ขณะนี้ฉันใช้โซลูชันทางเลือกของฉันซึ่งก็คือ `ถ้า mac_address ไม่ถูกต้อง ให้ทำ arp ip_address` ซึ่งปัจจุบันสั้นกว่าการเชื่อมสตริง แต่คุณก็มีทางออกที่ดีอยู่ดี
in flag
คำถามเกี่ยวกับที่อยู่ MAC ที่ "ไม่ถูกต้อง" และจะมีเลขศูนย์นำหน้าได้อย่างไร หวังว่าคุณจะพบทางออกที่ดีสำหรับปัญหาที่แท้จริงของคุณ แม้ว่านั่นจะดูแตกต่างจากคำถามนี้ก็ตาม

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา