A funcionalidade DHCP Relay é muito utilizada, já que é normal termos uma (ou mais) VLAN para usuários e uma (ou mais ) VLAN para servidores. Também é comum o switch core ser o gateway destas VLANs, e ser o responsável por encaminhar as requisições DHCP de uma rede para outra.
Já falamos sobre isso aqui no blog, considerando o uso de switches Catalyst. Porém, como sabemos, os switches Nexus usam o NX-OS, e alguns comandos são diferentes do IOS tradicional.
Diferente dos switches Catalyst (onde usamos o comando ip helper-address), no Nexus utilizamos o comando ip dhcp relay address. Mas não é só isso.
Configurando DHCP Relay no Cisco Nexus
Abaixo está a topologia usada neste exemplo, com as configurações do DHCP Client e DHCP Server para referência.
Configuração do NEXUS, que será responsável por encaminhar as requisições DHCP da VLAN 192 para o servidor DHCP que está em outra rede (VLAN10):
!Configure Hostname do equipamento
Hostname NEXUS
!Habilite as features necessárias
feature interface-vlan
feature dhcp
!Crie as VLANs e as interfaces VLANs
vlan 10,192
!
interface Vlan10
no shutdown
ip address 10.1.1.2/24
!Na interface VLAN que é gateway da rede de usuários (que receberá as requisições DHCP), habilite o DHCP Relay
interface Vlan192
no shutdown
ip address 192.168.1.1/24
ip dhcp relay address 10.1.1.1
! Configure as interfaces físicas nas respectivas VLANs
interface Ethernet2/1
switchport
switchport access vlan 10
no shutdown
!
interface Ethernet2/2
switchport
switchport access vlan 192
no shutdown
Por trás das cortinas
Não são só os comandos que são diferentes.
Quando habilitamos o ip helper-address em um equipamento com IOS, todos os pacotes broadcasts UDP com as portas de destino abaixo são encaminhadas para o IP especificado.
-
TIME, port 37
-
TACACS, port 49
-
DNS, port 53
-
BOOTP/DHCP Server, port 67
-
BOOTP/DHCP Client, port 68
-
TFTP, port 69
-
NetBIOS name service, port 137
-
NetBIOS datagram service, port 138
No NX-OS (Nexus) o comando ip dhcp relay encaminha apenas os pacotes broadcasts UDP com destino à portas 67 e 68. Se se objetivo é fazer o relay DHCP tudo bem, isso já é suficiente.
Mas se por algum motivo você precisa encaminhar outras requisições (DNS, TFTP, TIME,…) é necessário usar o comando ip forward-protocol udp. Com este comando os seguintes pacotes serão encaminhados:
-
Trivial File Transfer Protocol (TFTP) (port 69)
-
Time service (port 37)
-
NetBIOS Name Server (port 137)
-
NetBIOS Datagram Server (port 138)
-
TACACS service (port 49)
-
IEN-116 Name Service (port 42)
-
Domain Naming System (port 53)
Se precisar fazer o relay de algo diferente disso basta usar o comando ip forward-protocol udp XX (especificando a porta no lugar do XX). Isto tanto nos switches Nexus quanto nos Catalysts.
Referência: Configurando DHCP no NX-OS.
Até a próxima.