Thursday, 28 June 2012

Difference between siaddr/sname and ciaddr/yiaadr in DHCP (DORA Process)


In DHCP packet we have fields

"ciaddr" -> client IP address, "yiaddr"-> Your client IP address

What is difference between the two?

ciaddr : will be filled by client and is used only in BOUND,RENEW and REBINDING state

yiaddr :Filled by server and sent to client in DHCPOFFER and DHCPACK.

Similarly what is difference between "siaddr" :- Next server IP address and "sname" : optional host name ?

siaddr : used in boop protocol and it signifies TFTP server name

sname: optional fields used by clients to inform preference of tftp server for booting purpose.

I have not seen this field set by any client. Let me know who uses this field.

DHCP server puts his own address in "siaddr" by default. If you want to seperate DHCP server and TFTP server use option 66 in Windows 2003 DHCP server to specify the separate TFTP server name.

The DHCP server always use option 54 : DHCP server identifier to declare its own identity and ip address. It should not be confused with "siaddr" field.

Let me know your if you have any comments, on this my email id embsystest@gmail.com or post in comments below.

3 comments:

  1. Your above descriptions are correct. Option 54 is used so that the dhcp clients could send their DHCPREQUEST to that dhcp ip address specified in option 54 as a unicast when the broadcast flag in dhcp client is 1.

    ReplyDelete
    Replies
    1. Correction, broadcast flag is 0 instead of 1.

      Delete
  2. Thanks for the clear explanation. I was looking for the difference between CIADDR and YIADDR.

    ReplyDelete

Related Posts Plugin for WordPress, Blogger...