Cisco ip helper-address how exactly translation works

ciscocisco-commandscisco-ios

Can anyone explain how exactly works translation from broadcast to unicast? What is changed or modified in IP packet? Already I have read how it works and configured it properly for my network but still main question has left.

Example:
I want to create IP helper from whole subnet 192.168.1.0/24(R1) to 192.168.2.0/24(R2)
To manage this I have configured:

R1:
- ip forward-protocol 10,
- int vlan100
    ip addr 192.168.1.254
    ip helper-address 192.168.2.255

R2:
- access-list 200 permit udp 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255 eq 10
- int vlan200
    ip addr 192.168.2.254
    ip directed-broadcast 200

Now when I take a look on wireshark it looks like:
PCA sends packet to 192.168.2.255 with source 192.168.1.10 and here is the question how that 192.168.2.255 is translated to unicast?
At R2 it's source 192.168.1.10 and dest 255.255.255.255 with ff:ff:ff:ff:ff:ff

Best Answer

There's no translation or modification of a packet.

The router receive a broadcast packet that contains a DHCP request. Then it send a new unicast packet to the configured DHCP server requesting a lease on behalf of the host. Among other thing it contains the MAC address of the host.

The DHCP server send the response to the router. Then the router send an unicast packet to the originator (since it knows its mac address), and so on.

In human language it's something like:

  • host: yell "Hello, I'm Joe, I need an IP address"
  • router: ear Joe and send a call to DHCP "Joe need an IP address, can you give me one?"
  • DHCP: respond to router "Sure, I can give Joe IP address A"
  • router: respond to Joe "You can get IP address A, is it ok for you?" etc...
Related Topic