Tek bir ana bilgisayarda birden fazla USB Ethernet aygıtı için benzersiz IP aralıkları atama


0

Şu anda Linux kullanan, USB kullanarak bir Windows sunucusuna bağlanmayı sağlayan gömülü bir cihaz geliştiriyorum. Bunu başarmak için, bu cihazdaki USB Ethernet gadget sürücüsünü başarıyla kullanıyorum ve Windows 7 sunucum bir USB Ethernet adaptörü olarak tanıyor, cihazdaki udhcpd tarafından yanıtlanan bir DHCP isteği gönderiyor ve IP bağlantıları kurulabilir .

Bu, Windows ana bilgisayarına yalnızca tek bir katıştırılmış aygıt bağlandığında iyi çalışır. Birden fazla cihaz bağlarken, her cihazdaki her udhcpd, Windows hostuna aynı IP aralığını ve adresini sağlayacaktır; bu, bu farklı cihazlara yönlendirmeyi imkansız hale getirir.

Farklı gömülü aygıtlarda udhcpd.conf dosyasını bazı rasgele çalışma süreleriyle eklemeden farklı aralıkları dağıtan farklı udhcp'lere sahip olmanın bir yolu var mı?

Yanıtlar:


0

Bunu gerçekten denedin mi? İşe yaramalı. Özel udhcpd.conf kullanmanıza gerek yoktur. RFC2131 adresi, bu tür bir çatışmayı önlemek için çoklu DHCP sunucularının durumunu başlatır. Bu hem sunucunun hem de müşterinin sorumluluğundadır.

3.1 İstemci-sunucu etkileşimi - bir ağ adresi tahsis etme

...

  1. Her sunucu bir DHCPOFFER ile yanıt verebilir [...] Yeni bir adres ayırırken, sunucular sunulan ağ adresinin kullanımda olup olmadığını kontrol etmelidir; örneğin, sunucu sunulan adresi bir ICMP Yankı Talebi ile sorgulayabilir.

...

  1. İstemci DHCPACK mesajını yapılandırma parametreleriyle alır. Müşteri, parametreleri (örneğin, tahsis edilmiş ağ adresi için ARP) parametreler üzerinde son bir kontrol gerçekleştirmelidir ve DHCPACK mesajında ​​belirtilen kiralama süresini not eder. Bu noktada, istemci yapılandırılmıştır. Müşteri, adresin zaten kullanımda olduğunu tespit ederse (örneğin, ARP kullanımıyla), müşteri sunucuya bir DHCPDECLINE mesajı göndermelidir ve yapılandırma işlemini yeniden başlatır.

https://www.ietf.org/rfc/rfc2131.txt

Gerçekten de, udhcpd'nin ARP'yi (ve "TODO" ICMP'yi kullanması gerektiğini unutmayın) kullanarak yaptığı şey:

http://git.busybox.net/busybox/tree/networking/udhcp/dhcpd.c#n191

http://git.busybox.net/busybox/tree/networking/udhcp/leases.c#n136

... müşteri tarafında, udhcpc de bu kontrolü yapabilir:

http://git.busybox.net/busybox/tree/networking/udhcp/dhcpc.c#n1713

Windows DHCP istemcisinin durumu olup olmadığını bilmiyorum, ancak RFC'nin belirttiği gibi, KALMALIDIR.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.