Biraz araştırma yaptım.
Öğrendiğim ilk şey, bir MAC adresi dışındaki kriterlere göre DHCP kiralamalarının atanabilmesidir.
Dhcp SSS sayfasından :
Müşteri Kimliği nedir?
DHCP protokolü amacıyla İstemci Kimliği olarak adlandırılan, protokol tarafından istemci bilgisayarı tanımlamak için kullanılan yöntemdir. Varsayılan olarak, DHCP uygulamaları genellikle bu amaç için istemcinin MAC adresini kullanır, ancak DHCP protokolü diğer seçeneklere izin verir. Bazı DHCP uygulamalarında, istediğiniz istemci kimliğini belirtmek için bir kurulum seçeneği vardır. MAC adresine bir alternatif, sadece seçtiğiniz bir karakter dizisidir. Her durumda, DHCP'nin çalışması için başka hiçbir istemcinin seçtiğiniz istemci kimliğini kullanmadığından emin olmalısınız ve DHCP sunucusunun bunu kabul edeceğinden emin olmalısınız.
Daha sonra, görünüşe göre openWRT'deki luci web arayüzü tarafından desteklenmese de, dnsmasq'ın kendisi client_id ve çoklu MAC adreslerini (bazı uyarılarla) destekler.
Dnsmasq man sayfasından :
-G, --dhcp-host = [hwaddr] [, id: client_id | *] [, set: tag] [, ipaddr] [, hostname] [, lease_time] [, yoksay] DHCP sunucusu için ana bilgisayar parametreleri başına belirtin . Bu, belirli bir donanım adresine sahip bir makineye her zaman aynı ana bilgisayar adı, IP adresi ve kiralama süresi tahsis edilmesini sağlar. Bunun gibi belirtilen bir ana bilgisayar adı, makinedeki DHCP istemcisi tarafından sağlananları geçersiz kılar. Ayrıca, donanım adresini belirtmek ve ana bilgisayar adını eklemek de mümkündür, bu durumda IP adresi ve kiralama süreleri bu adı talep eden herhangi bir makine için geçerlidir. Örneğin --dhcp-host = 00: 20: e0: 3b: 13: af, wap, sonsuz dnsmasq'a makineye 00: 20: e0: 3b: 13: af ad wap ve sonsuz olan bir donanım vermesini söyler DHCP kirası. --dhcp-host = lap, 192.168.0.199, dnsmasq'a makineye her zaman 192.168.0.199 IP adresini atamasını söyler.
(...)
'İd:' ön ekiyle ana bilgisayarları tanımlamak için donanım adresleri yerine istemci tanımlayıcılarının kullanılmasına izin verilir. Bu nedenle: --dhcp-host = id: 01: 02: 03: 04, ..... 01: 02: 03: 04 istemci tanımlayıcısına sahip hostu belirtir. Ayrıca, istemci kimliğini şu şekilde metin olarak belirtmeye izin verilir: --dhcp-host = id: clientidastext, .....
(...)
Özel bir durum olarak, birden fazla donanım adresi eklemek mümkündür. örneğin: --dhcp-host = 11: 22: 33: 44: 55: 66,12: 34: 56: 78: 90: 12,192.168.0.2 Bu, bir IP adresinin birden çok donanım adresiyle ilişkilendirilmesine izin verir ve dnsmasq izni verir diğeri kira istediğinde donanım adreslerinden birine DHCP kirasından vazgeçme. Bunun tehlikeli bir şey olduğuna dikkat edin, yalnızca donanım adreslerinden yalnızca biri herhangi bir zamanda etkinse ve dnsmasq'ın bunu zorlaması için hiçbir yol yoksa güvenilir bir şekilde çalışacaktır. Örneğin, hem kablolu hem de kablosuz arayüzlere sahip bir dizüstü bilgisayara sabit bir IP adresi tahsis etmek yararlıdır.
Çoklu mac çözümünü seçtim (çünkü istemci tarafında istemci kimliğini nasıl belirleyebileceğimi bulmaya çalışmadım, bu da her ayrı istemci için yapılması gereken bir şeydir ve çoklu mac alternatifi Evdeki tüm taşınabilir cihazlar için tek bir çözüm.)
Luci arayüzünü atladım ve doğrudan /etc/dnsmasq.conf dosyasına aşağıdaki satırı ekledim:
DHCP HostsFile = / etc / dnsmasq-dhcphosts.conf
ve /etc/dnsmasq-dhcphosts.conf aşağıdaki biçimde satırlar içerir:
mac1, MAC2, ip
(Bir sonraki güncellemenin üzerine yazılmasını önlemek için bu yapılandırmayı ayrı bir dosyada saklıyorum.)
İyi çalışıyor.