Yanıtlar:
Bu, yalnızca iki DHCP istemcisi farklı MAC adresleri kullanıyorsa mümkündür. Bu, her ikisinin de tek bir MAC adresi olan aynı fiziksel ağ arabiriminde çalışamayacağı anlamına gelir.
Çözüm Linux'un sanal MAC-VLAN ağ arayüzleridir. MAC-VLAN arabirimleri, fiziksel bir arabirim tarafından desteklenen, ancak bir MAC-VLAN aygıtı oluşturduğunuzda rasgele oluşturulan farklı bir MAC adresiyle kullanılan sanal ağ arabirimleridir.
Fiziksel arabirim kullanarak bir MAC-VLAN arabirimi oluşturduktan sonra, bunu fiziksel arabirim gibi kullanırsınız. Özel durumunuzda, bir DHCP istemcisini fiziksel arabirimde diğerini MAC-VLAN aygıtında çalıştırabilirsiniz. Her cihazın (fiziksel ve MAC-VLAN) kendi IP adresi olabilir.
Yeni bir MAC-VLAN cihazı çalıştırarak macvlan0
oluşturulabilireth0
ip link add dev macvlan0 link eth0 type macvlan
Çalıştırarak silinebilir
ip link delete dev macvlan0
Ağ yapılandırma yazılımım ( http://code.google.com/p/badvpn/wiki/NCD ) olan NCD'yi kullanarak , aşağıdaki NCD programı , her birinde DHCP çalıştıran eth0
( macvlan0
ve macvlan1
) iki MAC-VLAN aygıtı oluşturur , ve elde edilen IP adreslerini atayın. Rota ekleme ve DNS sunucuları gibi diğer şeyleri kolayca yapabilirsiniz; ilgileniyorsanız NCD sayfasını okuyun.
process lan {
# Set device.
var("eth0") dev;
# Wait for device to appear, set it up, and wait for cable to be plugged in.
net.backend.waitdevice(dev);
net.up(dev);
net.backend.waitlink(dev);
# Start DHCP's.
provide("lan-link");
}
process lan_dhcp1 {
# Wait for link.
depend("lan-link") linkdep;
# Choose virtual device name.
var("macvlan0") vdev;
# Create virtual MAC-VLAN device.
list("/sbin/ip", "link", "add", "dev", vdev, "link", linkdep.dev, "type", "macvlan") do;
list("/sbin/ip", "link", "delete", "dev", vdev) undo;
run(do, undo);
# Set virtual device up.
net.up(vdev);
# DHCP configuration on virtual device.
net.ipv4.dhcp(vdev) dhcp;
ip_in_network(dhcp.addr, "127.0.0.0", "8") test_local;
ifnot(test_local);
println(vdev, ": got address ", dhcp.addr);
# Assign address to virtual device.
net.ipv4.addr(vdev, dhcp.addr, dhcp.prefix);
}
# This differs from above only in interface name (macvlan1).
process lan_dhcp2 {
# Wait for link.
depend("lan-link") linkdep;
# Choose virtual device name.
var("macvlan1") vdev;
# Create virtual MAC-VLAN device.
list("/sbin/ip", "link", "add", "dev", vdev, "link", linkdep.dev, "type", "macvlan") do;
list("/sbin/ip", "link", "delete", "dev", vdev) undo;
run(do, undo);
# Set virtual device up.
net.up(vdev);
# DHCP configuration on virtual device.
net.ipv4.dhcp(vdev) dhcp;
ip_in_network(dhcp.addr, "127.0.0.0", "8") test_local;
ifnot(test_local);
println(vdev, ": got address ", dhcp.addr);
# Assign address to virtual device.
net.ipv4.addr(vdev, dhcp.addr, dhcp.prefix);
}
Sonunda macvlan0
ve macvlan1
her biri kendi DHCP tarafından elde edilen IP adresine sahip olacaksınız ve eth0
bu adres açık ancak IP adresi yok. Alternatif olarak, yalnızca bir MAC-VLAN arabirimi oluşturabilir ve tek eth0
başına bir DHCP örneği çalıştırabilirsiniz .
Statik veya DHCP atanmış IP adreslerini kullanmak bilgisayarınız için yaptığınız bir seçimdir.
Burada iyi bir öğretici var .
Bol miktarda ayrıntı içerir ve DHCP tarafından atanan adres yerine statik kullanırsanız, örneğin DNS sunucularına ve ağ geçitlerine nasıl bağlanırsanız karşılaşabileceğiniz sorunlardan kaçınmanıza yardımcı olur.
DHCP sunucusunun bir arabirime birden çok adres göndermesine izin verecek bir DHCP yapılandırması görmedim. Protokolün bunu desteklediğine inanmıyorum. Bir arabirimde birden çok IP adresine girdikten sonra, bunları statik adresler olarak yapılandırmanız gerekir.
Bazı DHCP istemcileri, bir adres verildiğinde statik adres atanmasına izin verir. Windows'un birden fazla eklemenize izin vereceğine inanmıyorum.
Tüm statik adreslerinizin DCHP adres aralığının dışında olduğundan emin olun.
Emin değilim ama bir açık kaynak yönlendirici yoksa o zaman ne istediğinizi yapmak için statik IP kullanmak zorunda kalacağına inanıyorum. İstediğiniz şeyi yapmak istediğiniz için GERÇEKTEN iyi bir nedeniniz olmadıkça IMO, sadece DHCP ile yapışırdım. Sorunuzdan kimse bunu nasıl yapacağını bilmiyorsa beklemek ve birisi daha iyi bir cevap verene kadar DHCP ile kalmak istiyorum böylece ne istediğinizi görüyorum. Ağda 1-2'den fazla adet yoksa ve başka bir şey yoksa (yazıcılar medya genişleticiler vb.) O zaman Statik IP'leri IDK olarak nasıl kullanamazdım veya bu öğeleri statik bir IP ile ayarlamak mümkün değilse. Belki bir Açık kaynaklı Yönlendirici alırsanız istediğinizi yapabilirsiniz ve mac adresini tanımlamak ve IP'sini ayarlamak için bir makine olarak kullanarak makineniz için statik bir IP kullanmak istediğinizi yapabilirsiniz. ağın geri kalanı DHCP'ye bağlanabilir. Ben hiç yapmadım IDK ben sadece fikirleri atıyorum bu yüzden sizin için bir cevap yok için özür dilerim. Bryan tarafından sunulan bağlantı, DHCP ve Statik IP konularında güzel bir kaynak gibi görünse de. Ayrıca Açık Kaynak yönlendirici için Netgear ve D-Link'in onları daha emin hale getirdiğine inanıyorum ama IMO bu iki markayı seçtiğim markalardır. Şahsen Linksys'i sevmedim çünkü roman tarafından satın alındılar (daha iyi olacağını düşünürdüm ama IMO DEĞİLDİR. Şahsen ben bulduğum en özelleştirilebilir yönlendiriciler oldukları için D-link'i tercih ediyorum.) Ayrıca Açık Kaynak yönlendirici için Netgear ve D-Link'in onları daha emin hale getirdiğine inanıyorum ama IMO bu iki markayı seçtiğim markalardır. Şahsen Linksys'i sevmedim çünkü roman tarafından satın alındılar (daha iyi olacağını düşünürdüm ama IMO DEĞİLDİR. Şahsen ben bulduğum en özelleştirilebilir yönlendiriciler oldukları için D-link'i tercih ediyorum.) Ayrıca Açık Kaynak yönlendirici için Netgear ve D-Link'in onları daha emin hale getirdiğine inanıyorum ama IMO bu iki markayı seçtiğim markalardır. Şahsen Linksys'i sevmedim çünkü roman tarafından satın alındılar (daha iyi olacağını düşünürdüm ama IMO DEĞİLDİR. Şahsen ben bulduğum en özelleştirilebilir yönlendiriciler oldukları için D-link'i tercih ediyorum.)
Ayrıca bu bağlantıyı kontrol edin ve destekleniyorsa yönlendiricinizle daha fazlasını yapabilirsiniz.