Az alábbi problémára keresnék valami megoldást.
Adott egy gép 4 darab ethernet interface-szel. 1 WAN és 3 LAN felé. Ezen futna a DHCP szerver.
Előfordulhat, hogy egy notebook a különböző LAN-okban is megjelenik, és mindegyikben LAN-ban más-más IP-t, gatewayt, stb.-t kellene neki küldeni.
Pl. ha az 11:22:33:44:55:66 MAC-című gépről az eth1-en jön a kérés, akkor kapja fixen 10.0.1.15-öt, ha az eth2-n tűnik fel, akkor a 10.0.2.32-t, ha pedig az eth3-on, akkor a 10.0.3.50-100 intervallumból osszunk neki.
Ez nyilván megoldható, ha az ember 3 példányban futtatja a dhcp-szervert, mindegyik példányt egy-egy interface-hez kötve, de ehhez általában "drótozni/gányolni" kell, az meg hosszú távon sosem jó. Szóval az volna a jó, ha valamelyik dhcp szerver konfigurálható lenne a fenti célra.
Hozzászólások
Dnsmasq-kal szerintem meg lehet csinálni, de még macfoson vagyok, innen nehézkes most nekem megnézni.
http://lists.thekelleys.org.uk/pipermail/dnsmasq-discuss/2011q2/005113…
------------------------------------------------------------------------------
www.woodmann.com/searchlores/welcome.htm
Ha mindegyik LAN-ban range-ekből kellene osztani, akkor ez tényleg jó lenne, de van olyan LAN, ahol fix címet kellene osztani a gépnek.
dnsmasq-ot említette valaki, arra nem emlékszem fejből, hogy lehet-e rajta ilyet (szerintem igen), de a "hagyományos" isc-dhcp-server, ami pl. debianokban, meg talán a redhat alapú linuxokban is alapértelmezett dhcp szerver, simán lehet trükközés nélkül is, feltéve, hogy az egyes interface-ek eltérő alhálóba tartoznak.
Lásd dhcpd.conf subnet kulcsszó!
valahol írják hogy a dnsmasq dhcp-host opciója elfogad "net:" alopciót, ami olyan mint máshol a "tag:" - bár se a changelog-ban, se a manuálban nem írnak róla.
ha valamely verzió ismeri, akkor elvileg így tudod megoldani:
dhcp-host=11:22:33:44:55:66,10.0.1.15,net:eth1
dhcp-host=11:22:33:44:55:66,10.0.2.32,net:eth2
dhcp-range=interface:eth3,10.0.3.50,10.0.3.100,60m
dhcp-option=tag:eth1,option:router,10.0.1.1
dhcp-option=tag:eth2,option:router,10.0.2.1
dhcp-option=tag:eth3,option:router,10.0.3.1
de valóban, az ISC dhcpd-vel biztosan meg lehet oldani...
~~~~~~~~
deb http://deb.metaltux.tk/ wheezy yazzy repack
ISC esetében tényleg csak subnet alapján lehet konfigurálni?
Egyszer, nagyon régen keresgéltem valami olyat, hogy interface-enként más konfiguráció, de csak a subnetet találtam akkor is.
Kösz, ez megoldotta.
a dnsmasq oldotta meg? érti a "net:" opciót?
érdekelne hanyas verzió.
bár lehet, h nem érti (nem dob rá config errort) csak alapból ahhoz a subnethez való címet osztja ki a több illeszkedő dhcp-host szabály alapján?
~~~~~~~~
deb http://deb.metaltux.tk/ wheezy yazzy repack
2.62-3+deb7u1 verzió a debian stable-ből.
A man dnsmasq -ban van egy apró említés a net: -ről, de ott azt írja, hogy a dhcp-host -nál ez a set: -nek felel meg.
Ennek ellenére viszont úgy működik, ahogyan szeretném, vagyis mintha valami default tag lenne az eth1, eth2, stb.
nekem is ez van fönt.
úgy van, azt írja hogy a "set:" helyett használható a "net:". a "set:" pedig beállítja a cimkét, nem pedig az alapján szűr. úgyhogy szerintem az alap működése az, hogy ha több MAC egyezés van a dhcp-host szabályokban, akkor az interface subnet-jéhez megfelelő IP-t választja, ezáltal a "net:" paraméter nélkül is működnie kell.
az interface neve biztosan egy default tag, a logjában is látható, h minden dhcp kérésen rajta van az iface-nek megfelelő cimke.
~~~~~~~~
deb http://deb.metaltux.tk/ wheezy yazzy repack
Ha a dnsmasq-ról van szó, akkor a releváns tag-es sorokat légyszi tedd már ide be. Nem teljesen kizárt hogy egyszer jól jönne majd nekem is :D
Még a leírtnál is kicsit összetettebb a rendszerem, mert egy-egy interface-en akár több subnet is van, de remélem így még hasznosabb lesz a config:
Így néz ki az IP-kiosztás
eth0: x.x.x.x/255.255.255.0
eth1: 10.1.1.254/255.255.255.0
10.1.2.254/255.255.255.0
10.1.3.254/255.255.255.0
10.1.4.254/255.255.255.0
eth2: 10.2.1.254/255.255.255.0
eth3: 10.3.1.254/255.255.255.0
Így pedig a dnsmasq.conf idetartozó része:
dhcp-range=10.1.1.0,static,255.255.255.0
dhcp-range=10.1.2.0,static,255.255.255.0
dhcp-range=10.1.3.0,static,255.255.255.0
dhcp-range=interface:eth1,10.1.4.100,10.1.4.200,255.255.255.0,1h
dhcp-range=interface:eth2,10.2.1.100,10.2.1.200,255.255.255.0,1h
dhcp-range=10.3.1.0,static,255.255.255.0
dhcp-host=80:00:27:86:64:fd,lan01host01,10.1.1.5,net:eth1,12h
dhcp-host=80:00:27:86:64:fd,lan02host01,10.2.1.5,net:eth2,12h
dhcp-host=80:00:27:86:64:fd,lan03host01,10.3.1.8,net:eth3,12h
dhcp-host=80:00:27:86:64:fe,lan01host02,10.1.2.6,net:eth1,12h
dhcp-host=80:00:27:86:64:fe,lan02host02,10.2.1.6,net:eth2,12h
dhcp-host=80:00:27:86:64:fe,lan03host02,10.3.1.9,net:eth3,12h
dhcp-option=tag:eth1,option:dns-server,8.8.8.8
dhcp-option=tag:eth1,option:domain-name,"lan1.local"
dhcp-option=tag:eth2,option:dns-server,208.67.222.222
dhcp-option=tag:eth2,option:domain-name,"lan2.local"
dhcp-option=tag:eth3,option:dns-server,199.85.126.30
dhcp-option=tag:eth3,option:domain-name,"lan3.local"
dhcp-option=tag:eth3,option:router,10.3.1.2
Ezzel a konfiggal tesztelve mindkét ismert gép mindhárom lan-ban a neki fixen megadott címet kapja.
Ismeretlen gép a lan1-ben 10.1.4.100-200 tarományból kapott címet, a lan2-ben a 10.2.1.100-200 tartományból, a lan3-ban pedig nem kapott.
Köszi!
ISC DHCP-nél semmi sem tiltja, hogy egyszerre több interface-en különböző beállításokkal (subnet configokkal) fusson.
Hat igen, isc-dhcp eseten 3 interface-re felveszed a 3 tartomanyt, dhcp konfigba felveszed a 3 subnetet es a hosthoz felveszel 3 statikus bejegyzest (ugyanaz a mac, de a 3 eltero tartomany beli ip-vel es eltero hostnevekkel).