Então aqui vamos nós com uma pequena explicação sobre o que acontece. POR FAVOR, note que eu aconselho vivamente a executar as configurações dentro de um ambiente de teste para se certificar de que tudo funciona como você quer!
Edit: Por favor, note também que seus switches precisam ser configurados corretamente. Estamos usando comutadores CISCO. Para gerar uma chave OMAPI, você pode seguir guia1 ou guide2 .
Como fazer isc-dhcp-server ouvir em várias sub-redes. Este mini-guia lhe dará uma idéia básica de configuração e algum material adicional para ler para entender completamente o que está acontecendo.
dhcpd.conf:
omapi-port 7911;
omapi-key omapi_key;
key omapi_key {
algorithm hmac-md5;
secret your-secret-key;
}
# The ddns-updates-style parameter controls whether or not the server will
# attempt to do a DNS update when a lease is confirmed. We default to the
# behavior of the version 2 packages ('none', since DHCP v2 didn't
# have support for DDNS.)
ddns-update-style none;
# option definitions common to all supported networks...
# option domain-name-servers x.x.x.x,y.y.y.y;
option netbios-node-type 2;
default-lease-time 7200;
max-lease-time 7200;
# If this DHCP server is the official DHCP server for the local
# network, the authoritative directive should be uncommented.
authoritative;
# Use this to send dhcp log messages to a different log file (you also
# have to hack syslog.conf to complete the redirection).
log-facility local7;
# Failover Configuration
failover peer "failover-partner" {
primary;
# this servers ip address
address A.A.A.A;
port 519;
# dhcp failover ip address
peer address B.B.B.B;
peer port 520;
max-response-delay 60;
max-unacked-updates 10;
mclt 3600;
split 128;
load balance max seconds 3;
}
# No service will be given on this subnet, but declaring it helps the
# DHCP server to understand the network topology.
# here we include specific configuration files for our different subnets.
# I'll provide an example for a configuration file, all other subnet configuration files
# are (in my scenario) written the same way.
include "/etc/dhcp/X.Y.1.Z.conf";
include "/etc/dhcp/X.Y.2.Z.conf";
include "/etc/dhcp/X.Y.3.Z.conf";
X.Y.1.Z.conf:
#____________________________________
# subnet information X.Y.1.0/24
#____________________________________
subnet X.Y.1.0 netmask 255.255.255.0 {
deny client-updates;
deny unknown-clients;
# gateway of this subnet
option routers X.Y.1.254;
# DNS server(s)
option domain-name-servers 123.123.123.1, 123.123.123.2;
# search domain(s) for this subnet. Needs the "" to work!
option domain-search "domain1", "domain2";
# name of domain of this subnet (if exists, otherwise comment out)
option domain-name "mydomain";
# ntp server if you are running one
option ntp-servers X.Y.Z.254;
default-lease-time 86400;
max-lease-time 86400;
group {
use-host-decl-names on;
# Infodisplay
host dns-name-1 {
# mac address of client
hardware ethernet 00:00:00:00:00:00;
# ip address the above mac address will receive
fixed-address 123.123.123.1;
}
}
Outros arquivos de configuração para sub-redes são criados igualmente. Certifique-se de executar uma VM DHCP dentro do ESXi para disponibilizar a VM para todas as suas redes / VLANs. Em seguida, o isc-dhcp-server precisa atender em todas as redes para que ele possa lidar com diferentes sub-redes, tudo em uma única instância do isc-dhcp-server. Se você quiser omitir o tempo de inatividade ou uma rede que não funciona, é possível executar uma segunda VM com isc-dhcp-server no modo escravo assim:
slave dhcpd.conf:
omapi-port 7911;
omapi-key omapi_key;
key omapi_key {
algorithm hmac-md5;
secret your-secret-key;
}
# The ddns-updates-style parameter controls whether or not the server will
# attempt to do a DNS update when a lease is confirmed. We default to the
# behavior of the version 2 packages ('none', since DHCP v2 didn't
# have support for DDNS.)
ddns-update-style none;
# option definitions common to all supported networks...
# option domain-name-servers x.x.x.x,y.y.y.y;
option netbios-node-type 2;
default-lease-time 7200;
max-lease-time 7200;
# If this DHCP server is the official DHCP server for the local
# network, the authoritative directive should be uncommented.
authoritative;
# Use this to send dhcp log messages to a different log file (you also
# have to hack syslog.conf to complete the redirection).
log-facility local7;
# Failover Configuration
failover peer "failover-partner" {
primary;
# this servers ip address
address B.B.B.B;
port 519;
# dhcp master ip address
peer address A.A.A.A;
peer port 520;
max-response-delay 60;
max-unacked-updates 10;
mclt 3600;
split 128;
load balance max seconds 3;
}
# No service will be given on this subnet, but declaring it helps the
# DHCP server to understand the network topology.
# here we include specific configuration files for our different subnets.
# I'll provide an example for a configuration file, all other subnet configuration files
# are (in my scenario) written the same way.
include "/etc/dhcp/X.Y.1.Z.conf";
include "/etc/dhcp/X.Y.2.Z.conf";
include "/etc/dhcp/X.Y.3.Z.conf";
Certifique-se de que as chaves secretas sejam as mesmas em ambas as máquinas, caso contrário, cliente e servidor não são capazes de se comunicar ou fazer switch de failover se o servidor falhar e se espera que o escravo assuma a funcionalidade dhcp.
Se você tem as opções de hardware / configuração, por favor, configure tudo isso em um ambiente experimental.
POR FAVOR, NÃO EXECUTE INSTANTANEAMENTE NESTE EM UM AMBIENTE DE PRODUÇÃO .
Você pode parar de fazer seus clientes de rede funcionarem em segundos e é isso que seu chefe não vai gostar.