сряда, септември 09, 2009

MS DHCP multinet server

Идеята беше на един Windows 2003 Adv Server да има няколко интерфейса към LAN-a в различни vlan-и и да раздават IP-та от различни мрежи във всеки един от vlan-ите.
Решението е superscope с няколко scope (за всеки интерфейс по един). Такава е схемата
The проблем:
Когато РС намиращо се във vlan 1 направи dhcp request полчуава IP от scope1 от мрежата отговаряща за vlan1
Когато същото РС се премести във vlan 2 и направи dhcp request получава същото IP от scope1 от мрежата отговаряща за vlan1... доакто не се изтрие lease в scope1... тогава след ipconfig /release && ipconfig /renew няма проблеми
Като цяло проблема се дължи на факта, че Windows-a стартира 1 dhcp-server процес и съответно чете само от една база (Systemroot\System32\Dhcp което си е Exchange Server JET storage engine) така, че при повторно запитване от същото РС (т.е. същият МАС адрес в broadcast dhcp discovery packet-a) е нормално сървъра да отговори с IP което му се намира в базата.
Май не е толкова проблем колкото неудобство защото надали ще има толкова РС-та щъкащи от един vlan на друг. Не съм сигурен как е при Linux dhcpd (най-вероятно ефектът ще е същият), но при cisco, mikrotik, HP (ProCurve 48xx) за всеки "scope" се стартира отделен dhcp процес и съответно се създава отделна база

Няма коментари: