�����Fftp://ftp.rfc-editor.org/in-notes/rfc2131.txt

2004/08/20 0.1.0 ����
2005/12/16 0.2.0 ��N�ȏ�Ԃ�ɑS�̓I�Ɍ������B�Ӗ�������Ă����������������̂Ń}�C�i�[�o�[�W�����A�b�v���܂����B
2016/03/27 0.2.1 ��L�C��(�Z�N�V���� 4.3.2)


�\�[�V�����u�b�N�}�[�N�F ̃y[W͂ĂȃubN}[Nɒlj ̃y[WDeliciousɓo^ ̃y[WlivedoorNbvɓo^
�T�C�g���֘A�����N�F RFC 3396 DHCPv4�ɂ����钷���I�v�V�����̕�����


Network Working Group
Request for Comments: 2131
Obsoletes: 1541
Category: Standards Track

R. Droms
Bucknell University
March 1997


���I�z�X�g�\���v���g�R��
Dynamic Host Configuration Protocol

���̕����̈ʒu�t��

���̕����̓C���^�[�l�b�g�R�~���j�e�B�ׂ̈̃C���^�[�l�b�g�W���g���b�N�v���g�R���ɂ‚��ďq�ׂĂ���A���ǂɌ����Ă̋c�_�ƒ�ĂƂ����߂Ă���B���̃v���g�R���̕W�����̏�ԂƏ󋵂� "Internet Official ProtocolStandards"(STD 1) ���Q�Ƃ��ė~�����B���̕����̔z�z�͖������ł���B

�v��

Dynamic Host Configuration Protocol (DHCP) �� TCPIP �l�b�g���[�N��Ńz�X�g�ɍ\������n���ׂ̘g�g�݂�񋟂���BDHCP �� Bootstrap Protocol(BOOTP)[7] �Ɋ����ŁA�ė��p�”\�ȃl�b�g���[�N�A�h���X�ƒlj��̍\���I�v�V����[19]�Ƃ����������Ă���@�\��lj����Ă���BDHCP �� BOOTP �����[�G�[�W�F���g[7,21] �̓���𗘗p����ׁADHCP �̎Q���҂� BOOTP �̎Q���҂Ƒ��݉^�p���鎖���o����[9]�B

�ڎ�

1. ����
1.1 RFC1541 �ւ̕ύX�_
1.2 �֘A���
1.3 ����`�Ɩ��_
1.4 �v��
1.5 �p��
1.6 �݌v�ڕW
2. �v���g�R���v��
2.1 �\���p�����[�^���|�W�g��
2.2 �l�b�g���[�N�A�h���X�̓��I������
3. �N���C�A���g-�T�[�o�[�v���g�R��
3.1 �N���C�A���g-�T�[�o�[�̉�b - �l�b�g���[�N�A�h���X�������Ă�
3.2 �N���C�A���g-�T�[�o�[�̉�b - �ȑO�Ɋ����Ă��Ă����l�b�g���[�N�A�h���X���ė��p����
3.3 ���Ԓl�̐����ƕ\��
3.4 �O���ō\�����ꂽ�l�b�g���[�N�A�h���X�Ƌ��Ɏg�p����p�����[�^���擾����
3.5 DHCP �ɂ�����N���C�A���g�p�����[�^
3.6 �����C���^�[�t�F�C�X�����ƒN���C�A���g�ł� DHCP �̗��p
3.7 �N���C�A���g�͂��� DHCP ���g�p����ׂ���
4. DHCP �N���C�A���g�E�T�[�o�[�v���g�R���̋K��
4.1 DHCP ���b�Z�[�W�̍\�z�Ƒ��M
4.2 DHCP �T�[�o�[�̊Ǘ�����
4.3 DHCP �T�[�o�[�̐U�镑��
4.4 DHCP �N���C�A���g�̐U�镑��
5. �ӎ�
6. �Q�l����
7. �Z�L�����e�B�l�@
8. ���҂̃A�h���X
A. �z�X�g�\���p�����[�^

�}�ꗗ

1. DHCP ���b�Z�[�W�̃t�H�[�}�b�g
2. 'flags' �t�B�[���h�̃t�H�[�}�b�g
3. �V�����l�b�g���[�N�A�h���X�������Ă�ۂ� DHCP �N���C�A���g�ƃT�[�o�[�Ƃ̊ԂŌ�������郁�b�Z�[�W�̃^�C�����C���}
4. �ȑO�Ɋ����Ă��Ă����l�b�g���[�N�A�h���X���ė��p����ۂ� DHCP �N���C�A���g�ƃT�[�o�[�̊ԂŌ�������郁�b�Z�[�W�̃^�C�����C���}
5. DHCP �N���C�A���g�̏�ԑJ�ڐ}

�\�ꗗ

1. DHCP ���b�Z�[�W�̃t�B�[���h�̐���
2. DHCP ���b�Z�[�W
3. DHCP �T�[�o�[�ɂ���Ďg�p�����t�B�[���h�ƃI�v�V����
4. �l�X�ȏ�Ԃł̃N���C�A���g���b�Z�[�W
5. DHCP �N���C�A���g�̃t�B�[���h�ƃI�v�V����

1. ����

���I�z�X�g�\���v���g�R��(Dynamic Host Configuration Protocol : DHCP)�̓C���^�[�l�b�g�̃z�X�g�ɍ\���p�����[�^��񋟂���BDHCP �͓�‚̍\���v�f���琬��:DHCP �T�[�o�[����z�X�g�փz�X�g�ŗL�̍\���p�����[�^��`����ׂ̃v���g�R���A�����ăz�X�g�̃l�b�g���[�N�A�h���X�������Ă郁�J�j�Y���ł���B

DHCP �̓N���C�A���g�T�[�o�[���f���Ɋ�Ă���BDHCP �T�[�o�[�͓��I�ɍ\�������z�X�g�Ƀl�b�g���[�N�A�h���X�������āA�\���p�����[�^��`����B���̕����̂���ȍ~�A"�T�[�o�[" �� DHCP ��ʂ��ď������p�����[�^��񋟂���z�X�g���w���A"�N���C�A���g" �� DHCP �T�[�o�[�ɏ������p�����[�^��v������z�X�g���w���B

�V�X�e���Ǘ��҂ɂ���Ė����I�ɍ\������Ȃ�����A�z�X�g�� DHCP �T�[�o�[�Ƃ��ĐU�镑���ׂ��ł͂Ȃ��B�����C�ӂ̃z�X�g�� DHCP ���N�G�X�g�ւ̉��������‚����΁A�C���^�[�l�b�g��̃n�[�h�E�F�A�ƃv���g�R�������Ƃ̑��l���́A�M���ł���I�y���[�V������s�”\�ɂ��Ă��܂����낤�B�Ⴆ�� IP �́A���̃v���g�R������������\�t�g�E�F�A���ő����̃p�����[�^�̐ݒ��K�v�Ƃ���B����́AIP �������̈قȂ��ނ̃l�b�g���[�N�n�[�h�E�F�A��ŗ��p�ł���̂ŁA�����̃p�����[�^�ւ̒l�ɑ΂��Đ������f�t�H���g�l������/�������鎖���o���Ȃ��ׂł���B���̏�A�z�z�����A�h���X�������Ă�d�g�݂́A���Ɏg�p����Ă���A�h���X�����‚���|�[�����O/�f�B�t�F���X���J�j�Y���Ɉˑ�����B�z�z�����A�h���X�������Ă邱�̂悤�Ȏd�g�݂��l�b�g���[�N�A�h���X�̏d�������Ă�������鎖��ۏ؂ł��Ȃ��ׁAIP �z�X�g�͏�Ƀl�b�g���[�N�A�h���X����鎖���o����Ƃ͌���Ȃ����낤�B

DHCP �� IP �A�h���X�����Ăׂ̈̂R�‚̎d�g�݂��T�|�[�g����B"��������"�ł́ADHCP �̓N���C�A���g�ɉi���I�� IP �A�h���X�������Ă�B"���I����" �ł́ADHCP �̓N���C�A���g�Ɏ��Ԑ����t��(�܂��́A�N���C�A���g�������I�ɂ��̃A�h���X��j������܂�)�� IP �A�h���X�������Ă�B"�蓮����" �ł́A�N���C�A���g�� IP �A�h���X�̓l�b�g���[�N�Ǘ��҂ɂ���Ċ����Ă��ADHCP �͒P���ɃN���C�A���g�ɂ��̊����Ă�ꂽ�A�h���X��`����ׂɎg�p�����B�X�̃l�b�g���[�N�̓l�b�g���[�N�Ǘ��҂̃|���V�[�Ɋ�āA�����̎d�g�݂̓��̂P�‚܂��͕����𗘗p���邾�낤�B

�N���C�A���g���K�v�Ƃ��Ȃ��Ȃ����A�h���X�������I�ɍė��p�”\�ɂ��铮�I�����ẮA�R�‚̎d�g�݂̒��̂ЂƂ‚ɂ����Ȃ��B�]���ē��I�����ẮA�Œ� IP �A�h���X��K�v�Ƃ��Ȃ��N���C�A���g�O���[�v�Ԃ� IP �A�h���X�̌���ꂽ�v�[�������L����ׂɁA�܂��͂��̃l�b�g���[�N�Ɉꎞ�I�ɐڑ�����N���C�A���g�ɃA�h���X�������Ă�ׂɗL���ł���B�܂����I�����ẮAIP �A�h���X�����ɖR�����A�Â��N���C�A���g���ނ������� IP �A�h���X���J�����鎖���d�v�ł���悤�ȃl�b�g���[�N�ɂ����āA���X�Ɛڑ����Ă���V�����N���C�A���g�� IP �A�h���X�������Ă�ׂɂ��ǂ��I���ł��낤�B�蓮�����ẮA(���R�͉��ł���)DHCP ���J�j�Y���ȊO�� IP �A�h���X�̊����Ă��Ǘ����鎖���K�v�Ȋ‹��ɂ����āA�蓮�� IP �A�h���X��ݒ肷��Ƃ����ԈႢ�Ղ��v���Z�X�����炷�ׂɗ��p�”\�ł���B

BOOTP �K�� [7,21] �̈ꕔ�Ƃ��Đ�������Ă��� BOOTP �����[�G�[�W�F���g�̓���𗘗p���Ċ����� BOOTP �N���C�A���g�� DHCP �T�[�o�[�Ƃ̑��݉^�p���”\�ɂ���ׂɁADHCP ���b�Z�[�W�̃t�H�[�}�b�g�� BOOTP ���b�Z�[�W�̃t�H�[�}�b�g�Ɋ�Ă���BBOOTP �����[�G�[�W�F���g�𗘗p���鎖�ɂ��A�����I�ȃl�b�g���[�N�Z�O�����g���� DHCP �T�[�o�[�����•K�v���������Ȃ�B

1.1 RFC1541 �ւ̕ύX�_

���̕����� RFC1541 �ɏ�����Ă��� DHCP �v���g�R���d�l���X�V����B�V���� DHCP ���b�Z�[�W�^�C�v DHCPINFORM ���lj����ꂽ(�ڍׂ̓Z�N�V���� 3.4�A4.3�A4.4 �Q��)�B�Z�N�V���� 4.2 �� 4.3 �ƂŒ�`�����悤�ɁADHCP �T�[�o�[�� DHCP �N���C�A���g�����ʂ����镪�ނ̎d�g�݂��A"vendor" �N���X���܂ނ悤�Ɋg������Ă���B�Œ჊�[�X���Ԃ̐��񂪍폜���ꂽ�B�Ō�ɁADHCP �̑��݉^�p���̃e�X�g�œ���ꂽ���ʂƂ��āA���̕����𖾊m�ɂ���ׂɑ����̕ҏW��̕ύX���s��ꂽ�B

1.2 �֘A���

���I�z�X�g�\���̖��̈ꕔ�ɕt���Č��y���Ă���C���^�[�l�b�g�v���g�R���Ɗ֘A����d�g�݂Ƃ����݂���BReverse Address Resolution Protocol(RARP)[10](Dynamic RARP(DRARP)[5] �Ŋg������`����Ă��邪)�́A���炩�Ƀl�b�g���[�N�A�h���X�����̖��������Ă���A���� IP �A�h���X�����ă��J�j�Y�����܂�ł���BTrivial File Transfer Protocol(TFTP)[20] �́A�u�[�g�T�[�o�[����̃u�[�g�C���[�W�̓]����񋟂��Ă���BInternet Control Message Protocol(ICMP)[16] �́A"ICMP redirect" ���b�Z�[�W���o�R���ăz�X�g�ɒlj��̃��[�^��m�点����@��񋟂���B����� ICMP �́A"ICMP mask request" ���b�Z�[�W��ʂ��ăT�u�l�b�g�}�X�N�����A(����x���)"ICMP information request" ���b�Z�[�W��ʂ��Ă��̑��̏���񋟏o����B�z�X�g�� ICMP �̃��[�^�T�����J�j�Y�� [8] ��ʂ��ă��[�^�̈ʒu��˂��~�߂鎖���o����B

BOOTP �͍\�����̏W����]�����郁�J�j�Y���ł���B�܂� BOOTP �͊g���”\�ł���A��‚��̍\���p�����[�^�p�Ɍ����Ȋg�� [17] ����`����Ă���BMorgan �͓��I�� IP �A�h���X�����Ăׂ̈� BOOTP �ւ̊g�����Ă��Ă���[15]�BMIT �� Athena �v���W�F�N�g�ŗ��p����Ă��� Network Information Protocol(NIP) �́A���I�� IP �A�h���X�����Ăׂ̈̔z�z���J�j�Y���ł���BResource Location Protocol RLP[1] �́A��荂���x���̃T�[�r�X�̈ʒu����񋟂���BSun Microsystems �̃f�B�X�N���X���[�N�X�e�[�V�����́A�\�����ƃI�y���[�e�B���O�V�X�e���̃R�[�h�Ƃ��f�B�X�N���X�z�X�g�ɑ���ׂɁARARP �� TFTP �� RPC �Ƃ̊e���J�j�Y�����g�p���� "bootparams" �ƌĂ΂��u�[�g�葱�����g�p����B(Sun Microsystems�ASun Workstation�ASunOS �́ASun Microsystems, Inc �̏��W�ł���) �܂��ꕔ�� Sun �l�b�g���[�N���A�����l�b�g���[�N���̐V�����z�X�g�̍\��������������ׂɁADRARP �Ǝ����C���X�g�[�����J�j�Y���Ƃ��g�p����B

���̑��̊֘A��Ƃł́A�o�H�ŏ��`���P��(path minimum transmission unit:MTU)�����A���S���Y�����C�ӂ̃l�b�g���[�N�Ԃ̌o�H�� MTU ������ł���[14]�BAddress Resolution Protocol(ARP)�́A���\�[�X�̈ʒu�t���ƑI���Ƃׂ̈̃g�����X�|�[�g�v���g�R���Ƃ��Ē�Ă���Ă���[6]�B�Ō�ɁAHost Requirements RFC[3,4] �́A�z�X�g�̍č\���ׂ̈̓���̃��N�G�X�g��������A�f�B�X�N���X�z�X�g�̏����\���ׂ̈̃V�i���I��񋟂��Ă���B

1.3 ����`�Ɩ��_

DHCP �́AHost Requirements RFC �Œ�`����Ă���\���p�����[�^�� DHCP �N���C�A���g�ɒ񋟂���悤�ɐ݌v����Ă���BDHCP �N���C�A���g�� DHCP �o�R�Ńp�����[�^���擾������A�C���^�[�l�b�g�̔C�ӂ̑��̃z�X�g�ƃp�P�b�g�����ł���͂��ł���BDHCP �ɂ�� TCP/IP �X�^�b�N�p�����[�^�͕t�^ A �Ɉꗗ�Ŏ�����Ă���B

�V���������������N���C�A���g�ɂƂ��āA�����̃p�����[�^���S�ĕK�v�Ȃ킯�ł͂Ȃ��B�N���C�A���g�ƃT�[�o�[�́A���̃N���C�A���g�A�܂��͓���̃T�u�l�b�g�ɂ���ėv�������p�����[�^������`����ׂɌ��‚���Ηǂ��B

DHCP �� IP �v���g�R���ɒ��ڊ֘A���Ȃ��N���C�A���g�p�����[�^�̍\�������‚��Ă��邪�A�v���͂��Ă��Ȃ��B�܂� DHCP �́A�V�����\�����ꂽ�N���C�A���g�� Domain Name System(DNS)[12,13] �ւ̓o�^�ɂ‚��Ă͌��y���Ȃ��B

DHCP �̓��[�^���\������p�r�ɂ͈Ӑ}����Ă��Ȃ��B

1.4 �v��

���̕����S�̂�ʂ��āA�X�̗v���̏d�v�����`����ׂɎg�p�����P��͑啶���ŏ�����Ă���B�����̒P��͈ȉ��̒ʂ�B

"MUST"
���̒P��܂��͌`�e�� "REQUIRED" �́A���̍��ڂ����̋K��ɂ������΂̕K�v�����ł��鎖���Ӗ�����B
"MUST NOT"
���̐���́A���̍��ڂ����̋K��ɂ������΂̋֎~�����ł��鎖���Ӗ�����B
"SHOULD"
���̒P��܂��͌`�e�� "RECOMMENDED" �́A����̏󋵂ł͂��̍��ڂ𖳎�����Ó��ȗ��R�����邩������Ȃ��Ƃ��������Ӗ�����B�������Ȃ��犮�S�Ȏ��������������ׂ��ł���A�قȂ���j��I�ԑO�ɂ��̃P�[�X�𒍈Ӑ[���l���Ă݂�ׂ��ł���B
"SHOULD NOT"
���̐���́A����̏󋵂ł͂��̐U�镑�����󂯓������A���邢�͗L�p�ł�������悤�ȑÓ��ȗ��R�����݂��邩������Ȃ��Ƃ��������Ӗ�����B�������Ȃ��犮�S�Ȏ��������������ׂ��ł���A���̐���t���ŋL�q���ꂽ�@���Ȃ�U�镑���ł��A��������O�ɂ��̃P�[�X�𒍈Ӑ[���l���Ă݂�ׂ��ł���B
"MAY"
���̒P��܂��͌`�e�� "OPTIONAL" �́A���̍��ڂ��^�ɔC�ӂł��鎖���Ӗ�����B�Ⴆ�΁A���i����������A���邢�͓���̎s�ꂪ�����K�v�Ƃ��Ă���Ƃ������R�ŁA����x���_�[�͂��̍��ڂ��܂߂Ă��ǂ����A�ʂ̃x���_�[�͂��̓������ڂ��ȗ����Ă��ǂ��B

1.5 �p��

���̕����ł͈ȉ��̗p����g�p����B

"DHCP �N���C�A���g"
DHCP �N���C�A���g�́A�l�b�g���[�N�A�h���X�̂悤�ȍ\���p�����[�^���擾����ׂ� DHCP ���g�p����C���^�[�l�b�g�z�X�g�ł���B
"DHCP �T�[�o�["
DHCP �T�[�o�[�́ADHCP �N���C�A���g�ɍ\���p�����[�^��Ԃ��C���^�[�l�b�g�z�X�g�ł���B
"BOOTP �����[�G�[�W�F���g"
BOOTP �����[�G�[�W�F���g�܂��̓����[�G�[�W�F���g�́ADHCP �N���C�A���g�� DHCP �T�[�o�[�Ƃ̊Ԃ� DHCP ���b�Z�[�W��ʉ߂�����C���^�[�l�b�g�z�X�g�܂��̓��[�^�ł���BDHCP �� BOOTP �v���g�R���K��ŋK�肳��Ă���̂Ɠ��������[�G�[�W�F���g�̐U�镑�����g�p����悤�ɐ݌v����Ă���B
"�o�C���f�B���O"
�o�C���f�B���O�́ADHCP �N���C�A���g�ɑΉ��܂��� "�o�C���h����" ����A���Ȃ��Ƃ� IP �A�h���X���܂ލ\���p�����[�^�̏W���ł���B�o�C���f�B���O�� DHCP �T�[�o�[�ɂ���ĊǗ������B

1.6 �݌v�ڕW

�ȉ��̃��X�g�� DHCP �̈�ʓI�Ȑ݌v�ڕW�ł���B

�ȉ��̃��X�g�̓l�b�g���[�N�w�p�����[�^�̓`�B�ׂ̈̐݌v�ڕW�ł���B
DHCP �́A

2. �v���g�R���v��

�N���C�A���g�̎��_���猩��ƁADHCP �� BOOTP ���J�j�Y���̊g���ł���B���̐U�镑���ɂ������� BOOTP �N���C�A���g�́A���̏������\�t�g�E�F�A�ɉ��̕ύX���K�v�Ƃ���鎖�Ȃ��ADHCP �T�[�o�[�Ƌ������ē��삷�鎖���”\�ƂȂ�BRFC1542 [2] �́ABOOTP �� DHCP �Ƃ� �N���C�A���g�E�T�[�o�[�Ԃ̑Θb�ɂ‚��ďڏq���Ă���B�Z�N�V���� 3 �� 4 �ƂŐ�������Ă��� DHCP �̃N���C�A���g�E�T�[�o�[�Ԃ̑Θb���œK������ׂ́A��‚��̐V�����I�v�V�����̑Θb�����݂���B

�} 1 �� DHCP ���b�Z�[�W�̃t�H�[�}�b�g�ł���A�\ 1 �� DHCP ���b�Z�[�W�̊e�t�B�[���h�̐����ł���B���ʓ��̐��l�́A�e�t�B�[���h�̃T�C�Y���I�N�e�b�g�P�ʂŕ\�������̂ł���B�}�̒��ŗ^�����Ă���t�B�[���h�̖��O�́ADHCP ���b�Z�[�W���̃t�B�[���h���Q�Ƃ���ׂɁA���̕����S�̂�ʂ��Ďg�p�����B

DHCP �� BOOTP �Ƃ̊Ԃɂ́A��‚̎�v�ȑ��Ⴊ���݂���B���ɁADHCP �̓N���C�A���g�Ɋ����t�����[�X�̃l�b�g���[�N�A�h���X�������Ă鎖���ł��A�قȂ�N���C�A���g�ւ̈�A�̃l�b�g���[�N�A�h���X�̍Ċ����Ă��”\�ɂ��郁�J�j�Y�����`���Ă���B���ɁADHCP �̓N���C�A���g���쓮����ׂɕK�v�ȑS�Ă� IP �\���p�����[�^���擾���郁�J�j�Y����񋟂��Ă���B

DHCP �́A�t�B�[���h�̂ЂƂ‚𖾊m�ɂ���Ӑ}�ŁA�p��Ɏ኱�̕ύX��������Ă���BBOOTP �� "vendor extensions" �t�B�[���h�́ADHCP �ł� "options" �t�B�[���h�Ɖ������ꂽ�B���l�ɁABOOTP �� "vendor extensions" �t�B�[���h���Ŏg�p����Ă����^�O�t���f�[�^����(�ȑO�� "vendor extensions" �Ƃ��ĎQ�Ƃ���Ă���)�́A���݁A�P�� "options" �Ɩ��t�����Ă���B

   0                   1                   2                   3
   0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |     op (1)    |   htype (1)   |   hlen (1)    |   hops (1)    |
   +---------------+---------------+---------------+---------------+
   |                            xid (4)                            |
   +-------------------------------+-------------------------------+
   |           secs (2)            |           flags (2)           |
   +-------------------------------+-------------------------------+
   |                          ciaddr  (4)                          |
   +---------------------------------------------------------------+
   |                          yiaddr  (4)                          |
   +---------------------------------------------------------------+
   |                          siaddr  (4)                          |
   +---------------------------------------------------------------+
   |                          giaddr  (4)                          |
   +---------------------------------------------------------------+
   |                                                               |
   |                          chaddr  (16)                         |
   |                                                               |
   |                                                               |
   +---------------------------------------------------------------+
   |                                                               |
   |                          sname   (64)                         |
   +---------------------------------------------------------------+
   |                                                               |
   |                          file    (128)                        |
   +---------------------------------------------------------------+
   |                                                               |
   |                          options (�•ϒ�)                     |
   +---------------------------------------------------------------+

�} 1: DHCP ���b�Z�[�W�̃t�H�[�}�b�g

DHCP �́ADHCP �T�[�o�[�֖����I�ɃN���C�A���g���ʎq��n���ׂɎg�p�����V�����I�v�V�����A 'client identifier' ���`���Ă���B���̕ύX�� BOOTP ���b�Z�[�W�� 'chaddr' �t�B�[���h�̕��S�����炵�Ă���B'chaddr' �́ABOOTP �������b�Z�[�W���M���̃n�[�h�E�F�A�A�h���X�Ƃ��āA����сA�N���C�A���g���ʎq�Ƃ��Ďg�p����Ă���B'client identifier' �͕s���m�ȃL�[�ŁA�T�[�o�[�ɂ���ē��e�����߂���鎖�͂Ȃ��A�Ⴆ�� 'chaddr' �t�B�[���h�̓��e�Ɠ����n�[�h�E�F�A�A�h���X���܂�ł��ǂ����ADNS ���̂悤�ȕʂ̃^�C�v�̎��ʎq���܂�ł��ǂ��BDHCP �N���C�A���g�ɂ���đI������� 'client identifier' �́A���̃N���C�A���g���ڑ����Ă���T�u�l�b�g���Ń��j�[�N�łȂ���΂Ȃ�Ȃ�(MUST)�B�S�ẴT�[�o�[���N���C�A���g�𐳂������ʂ��鎖���m���ɂ���ׂɁA���� 'client identifier' �����郁�b�Z�[�W�Ŏg�p�����N���C�A���g�́A���̌�ɑ����S�Ẵ��b�Z�[�W�œ������ʎq���g�p���Ȃ���΂Ȃ�Ȃ�(MUST)�B

�N���C�A���g�̋N���v���Z�X�ɂ����鎟�̒i�K�Ŏg�p�����ׂɁADHCP �̓T�[�o�[�̃A�h���X�Ƃ��� 'siaddr' �t�B�[���h�̉��߂𖾊m�ɂ��Ă���BDHCP �T�[�o�[�́A�������̋N���T�[�r�X(�� �I�y���[�e�B���O�V�X�e���̎��s�C���[�W�̈����n��)��񋟂��鏀�������Ă���̂Ȃ�A'siaddr' �t�B�[���h�Ɏ������g�̃A�h���X��Ԃ��Ă��ǂ��BDHCP �T�[�o�[�� 'server identifier' �I�v�V�����ɏ�Ɏ������g�̃A�h���X��Ԃ��B

�t�B�[���h �I�N�e�b�g�� ����
op 1 ���b�Z�[�W op �R�[�h / ���b�Z�[�W�^�C�v
1 = BOOTREQUEST, 2 = BOOTREPLY
htype 1 �n�[�h�E�F�A�A�h���X�^�C�v�B"Assigned Number" RFC �� ARP �Z�N�V�����Q�ƁB
��:'1' = 10mb �C�[�T�l�b�g
hlen 1 �n�[�h�E�F�A�A�h���X�� (��:10mb �C�[�T�l�b�g�� '6')
hops 1 �N���C�A���g���[�����Z�b�g���A�����[�G�[�W�F���g�o�R�Ńu�[�g���鎞�Ƀ����[�G�[�W�F���g�ɂ���ĔC�ӂɎg�p�����B
xid 4 �g�����U�N�V���� ID�B�N���C�A���g�ɂ���Ė���ׂɑI�������B�N���C�A���g�E�T�[�o�[�Ԃ̃��b�Z�[�W�Ɖ����Ƃ�Ή��Â���ׂɁA�N���C�A���g�ƃT�[�o�[�Ƃɂ���Ďg�p�����B
secs 2 �N���C�A���g�ɂ���Ė��߂���B�N���C�A���g���A�h���X�̎擾�܂��͍X�V�̃v���Z�X���J�n���Ă���̌o�ߕb���B
flags 2 �t���O (�}2�Q��)
ciaddr 4 �N���C�A���g IP �A�h���X�B�N���C�A���g�� BOUND�ARENEW�A�܂��� REBINDING ��ԂŁA���� ARP ���N�G�X�g�ɉ������鎞�ɂ̂ݖ��߂���B
yiaddr 4 '���Ȃ���(your)'(�N���C�A���g��)IP �A�h���X�B
siaddr 4 �N�������Ɏg�p����鎟�̃T�[�o�[�� IP �A�h���X�BDHCPOFFER�ADHCPACK �̒��ŃT�[�o�[�ɂ���ĕԂ����B
giaddr 4 �����[�G�[�W�F���g�� IP �A�h���X�B�����[�G�[�W�F���g�o�R�ł̃u�[�g���Ɏg�p�����B
chaddr 16 �N���C�A���g�̃n�[�h�E�F�A�A�h���X�B
sname 64 �I�v�V�����̃T�[�o�[�z�X�g���B�k���ŏI��镶����B
file 128 �u�[�g�t�@�C�����B�k���ŏI��镶����BDHCPDISCOVER �ł� "generic" �܂��̓k���BDHCPDISCOVER �ł͊��S�ȃf�B���N�g���p�X���B
options var �I�v�V�����p�����[�^�t�B�[���h�B��`�ς݃I�v�V�����ꗗ�̕������Q�Ƃ��ė~�����B

�\ 1: DHCP ���b�Z�[�W�̃t�B�[���h�̐���

'options' �t�B�[���h�͉•ϒ��ł���BDHCP �N���C�A���g�́A���Ȃ��Ƃ� 312 �I�N�e�b�g���� 'options' �t�B�[���h������ DHCP ���b�Z�[�W���󂯎�鏀�����o���Ă��Ȃ���΂Ȃ�Ȃ��B���̗v���� DHCP �N���C�A���g�ɁA576 �I�N�e�b�g(IP �z�X�g����M����p�ӂ����Ȃ���΂Ȃ�Ȃ��ŏ��� IP �f�[�^�O�����T�C�Y[3])�܂ł̃��b�Z�[�W���󂯎�鏀�����o���Ă��Ȃ���΂Ȃ�Ȃ��Ƃ��������ۂ��Ă���BDHCP �N���C�A���g�� 'maximum DHCP message size' �I�v�V������p���āA���傫�� DHCP ���b�Z�[�W�̎g�p�����‚��Ă��ǂ��B�I�v�V�����t�B�[���h�͂���� 'file' �� 'sname' �t�B�[���h�ƂɊg������Ă��ǂ��B

�N���C�A���g�������\����(�N���C�A���g�� TCP/IP �\�t�g�E�F�A�Ƃ����S�ɍ\�������O)�� DHCP ���g�p����ꍇ�ADHCP �̓N���C�A���g TCP/IP �\�t�g�E�F�A�̑n���I�ȓ���ƁARFC1122 �̊���ȉ��߂Ƃ�K�v�Ƃ���BTCP/IP �\�t�g�E�F�A�́AIP�A�h���X���\�������O�ɃN���C�A���g�̃n�[�h�E�F�A�A�h���X�ɓ͂����@���Ȃ� IP �p�P�b�g�ł��󂯎��AIP �w�ɓ]������ׂ��ł���(SHOULD)�BDHCP �T�[�o�[�� BOOTP �����[�G�[�W�F���g�́ATCP/IP �\�t�g�E�F�A���\�������O�Ƀn�[�h�E�F�A���j�L���X�g�f�[�^�O�������󂯎�鎖�̏o���Ȃ��N���C�A���g�ɑ΂��� DHCP ���b�Z�[�W��`���鎖���o���Ȃ����낤�B

�O�̒i���ŋc�_�����悤�ȁATCP/IP �\�t�g�E�F�A���\�������O�� IP ���j�L���X�g�f�[�^�O�������󂯎�鎖�̏o���Ȃ��N���C�A���g���������ׂɁADHCP �� 'flags' �t�B�[���h[21] ���g�p����B���̍ł����̃r�b�g�� BROADCAST(B) �t���O�Ƃ��Ē�`����Ă���B���̃t���O�̈Ӗ��ɂ‚��Ă͂��̕����̃Z�N�V���� 4.1 �ŋc�_����Ă���Bflags �t�B�[���h�̎c��̃r�b�g�͏����ׂ̈ɗ\�񂳂�Ă���A�N���C�A���g�ɂ���� 0 ���Z�b�g����A�T�[�o�[�ƃ����[�G�[�W�F���g�Ƃɂ͖�������Ȃ���΂Ȃ�Ȃ�(MUST)�B�}2�́A'flags' �t�B�[���h�̃t�H�[�}�b�g�ł���B

                                    1 1 1 1 1 1
                0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
                +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                |B|             MBZ             |
                +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                B:  BROADCAST flag

                MBZ:  0 �łȂ���΂Ȃ�Ȃ� (�����ׂ̈ɗ\�񂳂�Ă���)

�} 2: 'flags' �t�B�[���h�̃t�H�[�}�b�g

2.1 �\���p�����[�^���|�W�g��

DHCP �ɂ���Ē񋟂������̃T�[�r�X�́A�l�b�g���[�N�N���C�A���g�Ƀl�b�g���[�N�p�����[�^�̉i���I�ȕۊǏꏊ��񋟂��鎖�ł���BDHCP �̉i���I�ۊǂ̃��f���́ADHCP �T�[�r�X���N���C�A���g���ɃL�[-�l��ۑ�����`�ł���A�L�[�̓��j�[�N�Ȏ��ʎq(�Ⴆ�΁AIP �T�u�l�b�g�ԍ��ƃT�u�l�b�g���Ń��j�[�N�Ȏ��ʎq)�A�l�͂��̃N���C�A���g�̍\���p�����[�^���܂ށB

�Ⴆ�΃L�[�́A�قȂ�T�u�l�b�g��ł̃n�[�h�E�F�A�A�h���X�̘A���܂��͓����̍ė��p�A����уO���[�o���ɂ̓��j�[�N�łȂ���������Ȃ��n�[�h�E�F�A�A�h���X���l�������y�A(IP �T�u�l�b�g�ԍ��A�n�[�h�E�F�A�A�h���X)�ŗǂ�(�������f�B�A��u���b�W���ꂽ�l�b�g���[�N�ł́A�r�b�g�I�[�_�[�̉e���ŋN���蓾��n�[�h�E�F�A�A�h���X�̏d�������e����ׂɁA"�n�[�h�E�F�A�A�h���X" �̓n�[�h�E�F�A�̌^�ɂ���ĕ��ނ����ׂ��ł��鎖�ɒ��ӂ��ė~����)�B���邢�̓L�[�́A�قȂ�T�u�l�b�g�Ɉړ��������A(�����炭�l�b�g���[�N�C���^�[�t�F�C�X���̏Ⴕ�u����������)�n�[�h�E�F�A�A�h���X���ς���� DHCP �N���C�A���g�ɑ΂��A�T�[�o�[�����܂��p�����[�^�������Ă鎖���”\�ɂ���y�A(IP �T�u�l�b�g�ԍ��A�z�X�g��)�ł��ǂ��B���̃v���g�R���ł́A�N���C�A���g�� 'client identifier' �I�v�V�������g�p���Ė����I�Ɏ��ʎq��񋟂��Ȃ�����A�L�[��(IP �T�u�l�b�g�ԍ��A�n�[�h�E�F�A�A�h���X)�ɂȂ�悤�ɒ�`����Ă���B�N���C�A���g�́A���g�̍\���p�����[�^���擾����ׂ� DHCP �T�[�r�X�ɖ⍇���鎖���o����B�\���p�����[�^���|�W�g���ւ̃N���C�A���g�C���^�[�t�F�C�X�́A�\���p�����[�^��v������v���g�R�����b�Z�[�W�ƁA�\���p�����[�^��`����T�[�o�[����̉����Ƃō\�������B

2.2 �l�b�g���[�N�A�h���X�̓��I������

DHCP �ɂ���Ē񋟂������̃T�[�r�X�́A�N���C�A���g�Ɉꎞ�I�܂��͉i���I�ȃl�b�g���[�N(IP)�A�h���X�������Ă鎖�ł���B�l�b�g���[�N�A�h���X�̓��I�����Ă̊�{���J�j�Y���͒P���ł���: �N���C�A���g���K���ȊԊu�ŃA�h���X�̎g�p��v������B�����ă��J�j�Y��(DHCP �T�[�o�[�̏W��)�́A�v�����ꂽ���ԓ��ɂ͂��̃A�h���X���Ċ����Ă��Ȃ�����ۏ؂��A�N���C�A���g���A�h���X��v������x�ɓ����l�b�g���[�N�A�h���X��Ԃ��悤���݂�B���̕����ł́A�l�b�g���[�N�A�h���X���N���C�A���g�Ɋ����Ă��Ă�����Ԃ� "���[�X(lease)"[11] �ƌ����B�N���C�A���g�͌㑱�̃��N�G�X�g�ł��̃��[�X���������Ă��ǂ��B�A�h���X���s�v�ɂȂ�΁A�N���C�A���g�͂��̃A�h���X���T�[�o�[�ɖ߂��ĊJ�����邽�߂Ƀ��b�Z�[�W�𔭍s���Ă��ǂ��B�N���C�A���g�͖������̃��[�X�����߂鎖�ŁA�i���I�Ȋ����Ă�v�����Ă��ǂ��B"�i���I��" �A�h���X�������Ă�ꍇ�ł��A�N���C�A���g�����ނ����������o�ł���悤�ɁA�T�[�o�[�͒����Ԃ����������ł͂Ȃ����[�X��z�z���鎖��I��ł��ǂ��B

�ꕔ�̊‹��ł́A���p�o����A�h���X�̕s���ׂ̈ɁA�l�b�g���[�N�A�h���X�̍Ċ����Ă��K�v�Ƃ���邾�낤�B���̂悤�Ȋ‹��ɂ����āA�����ă��J�j�Y���̓��[�X�̊������؂ꂽ�A�h���X���ė��p���邾�낤�B�ė��p����A�h���X��I������ׂɁA�T�[�o�[�͍\����񃊃|�W�g�����ŗ��p�”\�Ȃ�������𗘗p����ׂ��ł���B�Ⴆ�΃T�[�o�[�́A�ł��Ō�Ɏg�p���ꂽ�A�h���X��I�����Ă��ǂ��B�����Ă��s���T�[�o�[�́A��ѐ��̃`�F�b�N�Ƃ��āA�Ⴆ�� ICMP �G�R�[���N�G�X�g���g���āA�ė��p����A�h���X�������Ă�O�ɂ��̃A�h���X�𒲂ׂ�ׂ��ł���(SHOULD)�B�N���C�A���g�́A�Ⴆ�� ARP ���g���āA�V���Ɏ󂯎�����A�h���X�𒲂ׂ�ׂ��ł���(SHOULD)�B

3. �N���C�A���g-�T�[�o�[�v���g�R��

DHCP �́ARFC951 �Œ�`����\ 1 �Ɛ} 1 �ƂŎ�����Ă��� BOOTP ���b�Z�[�W�t�H�[�}�b�g���g�p����B�N���C�A���g����T�[�o�[�ɑ�����e DHCP ���b�Z�[�W�� 'op' �t�B�[���h�́ABOOTREQUEST ���܂ށBBOOTREPLY �́A�T�[�o�[����N���C�A���g�ɑ�����e DHCP ���b�Z�[�W�� 'op' �t�B�[���h�Ŏg�p�����B

DHCP ���b�Z�[�W�� 'option' �t�B�[���h�̍ŏ��� 4 �I�N�e�b�g�́A���ꂼ�� 99�A130�A83�A99 �̒l(10 �i)���܂�(����� RFC1497[17] �Œ�`����Ă���̂Ɠ����A�}�W�b�N�N�b�L�[(magic cookie)�ł���)�B'option' �t�B�[���h�̎c��́A"�I�v�V����" �ƌĂ΂��^�O�t���p�����[�^�̃��X�g���܂ށBRFC1497 �Ń��X�g����Ă���S�Ă� "�x���_�[�g��" ���A������ DHCP �I�v�V�����ł���BRFC1533 �� DHCP �Ŏg�p����邽�߂ɒ�`����Ă���I�v�V�����̊��S�ȃZ�b�g��^����B

����܂łɊ�‚��̃I�v�V��������`����Ă����B�ЂƂ‚̓��ʂȃI�v�V���� - "DHCP message type" �I�v�V���� - �́A�S�Ă� DHCP ���b�Z�[�W�Ɋ܂܂�Ȃ���΂Ȃ�Ȃ��B���̃I�v�V������ DHCP ���b�Z�[�W�� "�^�C�v" ���`����B�lj��̊e�I�v�V�����́A���� DHCP ���b�Z�[�W�^�C�v�ɏ]���āA���‚��ꂽ��v�����ꂽ��A���邢�͋��‚���Ȃ������肵�ėǂ��B

���̕����S�̂�ʂ��āA'DHCP message type' �I�v�V�������܂� DHCP ���b�Z�[�W�́A���̃��b�Z�[�W�̃^�C�v�ɂ���ĎQ�Ƃ����B�Ⴆ�� 'DHCP message type' �I�v�V�����^�C�v 1 �� DHCP ���b�Z�[�W�́A"DHCPDISCOVER" ���b�Z�[�W�Ƃ��ĎQ�Ƃ����B

3.1 �N���C�A���g-�T�[�o�[�̉�b - �l�b�g���[�N�A�h���X�������Ă�

�N���C�A���g - �T�[�o�[�Ԃ̃v���g�R���̂����Ɋւ���ȉ��̗v��́A�\ 2 �ɋL�q����Ă��� DHCP ���b�Z�[�W�ɂ‚��Č��y���Ă���B�} 3 �̃^�C�����C���́A�T�^�I�ȃT�[�o�[ - �N���C�A���g�̑Θb�̎��ԓI�֌W��\���Ă���B�����N���C�A���g�����g�̃A�h���X��m���Ă���̂Ȃ�A��‚��̃X�e�b�v���ȗ�����Ă��ǂ��B�ȗ�����Ă���Θb�ɕt���Ă̓Z�N�V���� 3.2 �Ő�������Ă���B

  1. �N���C�A���g�́A���̃��[�J�������T�u�l�b�g�� DHCPDISCOVER ���b�Z�[�W���u���[�h�L���X�g����BDHCPDISCOVER ���b�Z�[�W�́A�l�b�g���[�N�A�h���X�̒l�ƃ��[�X���Ԃ̒l�Ƃ������I�v�V�������܂�ł��ǂ�(MAY)�BBOOTP �����[�G�[�W�F���g�́A���̃��b�Z�[�W���قȂ镨���T�u�l�b�g��ɑ��݂��� DHCP �T�[�o�[�ɓ`���Ă��ǂ��B
  2. �e�T�[�o�[�́A'yiaddr' �t�B�[���h�ɗ��p�”\�ȃl�b�g���[�N�A�h���X(�����āADHCP �I�v�V�����ɂ��̑��̍\���p�����[�^)���܂� DHCPOFFER ���b�Z�[�W��Ԃ��ėǂ��B�T�[�o�[���񋟂����l�b�g���[�N�A�h���X��ʂ̃N���C�A���g�Ɋ����Ă鎖�������悤�ɂ���΂��̃v���g�R���͂��\���I�ɓ��삷�邪�A�T�[�o�[�͒񋟂����l�b�g���[�N�A�h���X��\�񂷂�K�v�͂Ȃ��B�V�����A�h���X�������Ă悤�Ƃ��鎞�A�T�[�o�[�͂��̃l�b�g���[�N�A�h���X�����Ɏg�p����Ă��Ȃ����ǂ����m�F����ׂ��ł���(SHOULD)�B�Ⴆ�΃T�[�o�[�� ICMP �G�R�[���N�G�X�g���g���āA�񋟂����A�h���X�𒲍����Ă��ǂ��B�T�[�o�[�́A�V���������Ă���A�h���X�̒������l�b�g���[�N�Ǘ��҂������ɂ���I�������Ă��ǂ�(MAY)�悤�Ɏ��������ׂ��ł���(SHOULD)�B�T�[�o�[�́A�K�v�Ȃ� BOOTP �����[�G�[�W�F���g���g�p���āADHCPOFFER ���b�Z�[�W���N���C�A���g�ɑ��M����B
    ���b�Z�[�W �p�r
    DHCPDISCOVER ���p�”\�ȃT�[�o�[�����‚���ׂ́A�N���C�A���g�ɂ��u���[�h�L���X�g�B
    DHCPOFFER �T�[�o�[����N���C�A���g�ւ� DHCPDISCOVER �ɑ΂��鉞���B�\���p�����[�^�̓��e���܂�
    DHCPREQUEST �N���C�A���g����T�[�o�[�ւ́A���̉��ꂩ�̃��b�Z�[�W�B(a) �񋟂��ꂽ�p�����[�^������T�[�o�[����v�����A�ÖٓI�ɂ��̑����ׂẴT�[�o�[����̐\���o��f��B(b) �Ⴆ�΃V�X�e�����u�[�g��ɁA�O�Ɋ����Ă��Ă����A�h���X�̐��������m�F����B(c) �������̃l�b�g���[�N�A�h���X�̃��[�X����������B
    DHCPACK ���肵���l�b�g���[�N�A�h���X���܂ލ\���p�����[�^�����A�T�[�o�[����N���C�A���g�ւ̃��b�Z�[�W
    DHCPNAK �N���C�A���g�̃l�b�g���[�N�A�h���X�̍l�����Ԉ���Ă��鎖(�� �N���C�A���g���V�����T�u�l�b�g�Ɉړ�����)�A�܂��̓N���C�A���g�̃��[�X�������؂�ł��鎖�������ׂɁA�T�[�o�[����N���C�A���g�ցB
    DHCPDECLINE �l�b�g���[�N�A�h���X�����ɗ��p����Ă��鎖�������ׂɁA�N���C�A���g����T�[�o�[�ցB
    DHCPRELEASE �l�b�g���[�N�A�h���X��������c��̃��[�X���L�����Z������ׂɁA�N���C�A���g����T�[�o�[�ցB
    DHCPINFORM ���[�J���̍\���p�����[�^��⍇����ׂ����ɃN���C�A���g����T�[�o�[�ցB�N���C�A���g�͊��ɑ�����l�b�g���[�N�A�h���X��ݒ肳��Ă���B

    �\ 2: DHCP���b�Z�[�W

                   �T�[�o�[     �N���C�A���g       �T�[�o�[
                (�I������Ȃ�)                   (�I�������)
    
                      v               v               v
                      |               |               |
                      |           �������J�n          |
                      |               |               |
                      | _____________/|\____________  |
                      |/DHCPDISCOVER  | DHCPDISCOVER \|
                      |               |               |
                   �\����             |            �\����
                     �m��             |              �m��
                      |               |               |
                      |\              |  ____________/|
                      | \________     | /DHCPOFFER    |
                      | DHCPOFFER\    |/              |
                      |           \   |               |
                      |          ���������W           |
                      |             \ |               |
                      |          �\����I��           |
                      |               |               |
                      | _____________/|\____________  |
                      |/ DHCPREQUEST  |  DHCPREQUEST\ |
                      |               |               |
                      |               |           �\��������
                      |               |               |
                      |               | _____________/|
                      |               |/ DHCPACK      |
                      |               |               |
                      |           ����������          |
                      |               |               |
                      .               .               .
                      .               .               .
                      |               |               |
                      |         �V���b�g�_�E��        |
                      |               |               |
                      |               |\ ____________ |
                      |               | DHCPRELEASE  \|
                      |               |               |
                      |               |         ���[�X��j��
                      |               |               |
                      v               v               v
    

    �} 3: �V�����l�b�g���[�N�A�h���X�������Ă�ۂ� DHCP �N���C�A���g�ƃT�[�o�[�Ƃ̊ԂŌ�������郁�b�Z�[�W�̃^�C�����C���}

  3. �N���C�A���g�́A�ЂƂˆȏ�̃T�[�o�[����ЂƂˆȏ�� DHCPOFFER ���b�Z�[�W����M����B�N���C�A���g�͕����̉�����҂Ž���I�����Ă��ǂ��B�N���C�A���g��DHCPOFFER ���b�Z�[�W�̒��Œ񋟂��ꂽ�\���p�����[�^�Ɋ�āA�\���p�����[�^��v������T�[�o�[���ЂƂ‘I������B�N���C�A���g�� DHCPREQUEST ���b�Z�[�W���u���[�h�L���X�g����B����ɂ͂ǂ̃T�[�o�[���I�����ꂽ�������� 'server identifier' �I�v�V�������܂܂Ȃ���΂Ȃ炸(MUST)�A�]�݂̍\���l����肷�鑼�̃I�v�V�������܂�ł��ǂ�(MAY)�B'requested IP address' �I�v�V�����ɂ́A�T�[�o�[����� DHCPOFFER ���b�Z�[�W�Ɋ܂܂�� 'yiaddr' �̒l���Z�b�g����Ă��Ȃ���΂Ȃ�Ȃ�(MUST)�B���� DHCPREQUEST ���b�Z�[�W�̓u���[�h�L���X�g�ł���ADHCP/BOOTP �����[�G�[�W�F���g��ʂ��Ē��p�����B�ǂ� BOOTP �����[�G�[�W�F���g�� DHCPREQUEST ���b�Z�[�W������ DHCPDISCOVER ���b�Z�[�W����M�������� DHCP �T�[�o�[�̏W���ɓ]�����鎖���m���ɂ���菕���ƂȂ�悤�ɁADHCPREQUEST ���b�Z�[�W�� DHCP ���b�Z�[�W�w�b�_�� 'secs' �t�B�[���h�ɓ����l���g�p���Ȃ���΂Ȃ炸(MUST)�A���� DHCPDISCOVER ���b�Z�[�W�Ɠ��� IP �u���[�h�L���X�g�A�h���X�ɑ��M����Ȃ���΂Ȃ�Ȃ�(MUST)�B�N���C�A���g�� DHCPOFFER ���b�Z�[�W����M���Ȃ������ꍇ�A���̃N���C�A���g�̓^�C���A�E�g���ADHCPDISCOVER ���b�Z�[�W���đ��M����B
  4. �T�[�o�[�̓N���C�A���g����� DHCPREQUEST �u���[�h�L���X�g����M����BDHCPREQUEST ���b�Z�[�W�ɂ���đI������Ȃ������T�[�o�[�́A���̃��b�Z�[�W���A�N���C�A���g�����̃T�[�o�[�̐\���o��f�������̒ʒm�Ƃ��Ďg�p����BDHCPREQUEST ���b�Z�[�W�őI�����ꂽ�T�[�o�[�́A�i���I�ȕۊǏꏊ�ɂ��̃N���C�A���g�ׂ̈̃o�C���f�B���O��ۑ����A�v�������N���C�A���g�ɑ΂��č\���p�����[�^���܂� DHCPACK ���b�Z�[�W�ʼn�������B'identifier'�A�܂��� 'chaddr' �ƃl�b�g���[�N�A�h���X�Ƃ̑g���킹�́A�N���C�A���g�̃��[�X�ׂ̈̃��j�[�N�Ȏ��ʎq���\�����A�S�Ă� DHCP ���b�Z�[�W���ŎQ�Ƃ���郊�[�X�����ʂ���ׂɁA�N���C�A���g�ƃT�[�o�[�̗����ɂ���Ďg�p�����BDHCPACK ���b�Z�[�W���̔@���Ȃ�\���p�����[�^���A�ŏ��ɃN���C�A���g���������� DHCPOFFER ���b�Z�[�W���̍\���p�����[�^�Ƌ�������ׂ��ł͂Ȃ�(SHOULD NOT)�B���̎��_�ł́A�T�[�o�[�͒񋟂��ꂽ�l�b�g���[�N�A�h���X�𒲂ׂ�ׂ��ł͂Ȃ�(SHOULD NOT)�BDHCPACK ���b�Z�[�W���� 'yiaddr' �t�B�[���h�͑I�����ꂽ�l�b�g���[�N�A�h���X�Ŗ��߂��Ă���B

    �I�����ꂽ�T�[�o�[�� DHCPREQUEST ���b�Z�[�W�̗v���𖞑������鎖���o���Ȃ�(�Ⴆ�΁A�v�����ꂽ�l�b�g���[�N�A�h���X�����Ɋ����Ă��Ă���)�ꍇ�A�T�[�o�[�� DHCPNAK ���b�Z�[�W��Ԃ��ׂ��ł���(SHOULD)�B

    �T�[�o�[�́ADHCPOFFER ���b�Z�[�W�ŃN���C�A���g�ɒ񋟂����A�h���X�𗘗p�s�‚Ƃ��ă}�[�N���Ă��ǂ�(MAY)�B�N���C�A���g���� DHCPREQUEST ���b�Z�[�W���󂯎��Ȃ������ꍇ�A�T�[�o�[�� DHCPOFFER ���b�Z�[�W���ŃN���C�A���g�ɒ񋟂����A�h���X�𗘗p�”\�Ƃ��ă}�[�N����ׂ��ł���(SHOULD)�B

  5. �N���C�A���g�͍\���p�����[�^���܂� DHCPACK ���b�Z�[�W���󂯎��B�N���C�A���g��(�Ⴆ�΁A�����Ă���l�b�g���[�N�A�h���X�ɑ΂��� ARP ��p����)�p�����[�^�̍ŏI�m�F�����s���ADHCPACK ���b�Z�[�W���Ŏw�肳��Ă��郊�[�X���Ԃ��L������ׂ��ł���(SHOULD)�B���̎��_�ŁA�N���C�A���g�͍\�������B�N���C�A���g��(�Ⴆ�΁AARP �𗘗p����)���̃A�h���X�����Ɏg�p����Ă��鎖�����o�����ꍇ�A�N���C�A���g�̓T�[�o�[�� DHCPDECLINE ���b�Z�[�W�𑗐M���A�\���v���Z�X���ăX�^�[�g���Ȃ���΂Ȃ�Ȃ�(MUST)�B���[�v�ɂ��ߓx�̃l�b�g���[�N�g���t�B�b�N�������ׂɁA�N���C�A���g�͍\���v���Z�X�̃��X�^�[�g�̑O�ɍŒ� 10 �b�͑ҋ@����ׂ��ł���(SHOULD)�B

    �N���C�A���g�� DHCPNAK ���b�Z�[�W���󂯎�����ꍇ�A�N���C�A���g�͍\���v���Z�X�����X�^�[�g����B

    �N���C�A���g�� DHCPACK ���b�Z�[�W�� DHCPNAK ���b�Z�[�W���󂯎��Ȃ������ꍇ�A�N���C�A���g�̓^�C���A�E�g���ADHCPREQUEST ���b�Z�[�W���đ��M����B�N���C�A���g�́A�Z�N�V���� 4.1 �̍đ��M�A���S���Y���ɂ��������� DHCPREQUEST ���đ��M����B�N���C�A���g�́A�N���C�A���g(�Ƃ��̃N���C�A���g�̗��p��)��������߂�O�ɉߓx�ɒ����҂‚��ƂȂ��A�T�[�o�[�ƘA������\���ȉ”\����^����̂ɏ\���ȉ񐔂����ADHCPREQUEST ���đ��M���鎖��I������ׂ��ł���B�Ⴆ�΃Z�N�V���� 4.1 �Ő��������悤�ȍđ��M���s���N���C�A���g�́A�������葱���̍ĊJ�̑O�ɁA���v 60 �b�̒x���� 4 ��� DHCPREQUEST ���b�Z�[�W���đ����ėǂ��B�N���C�A���g���đ��A���S���Y�����g�p������� DHCPACK ���b�Z�[�W�� DHCPNAK ���b�Z�[�W����M���Ȃ������ꍇ�A���̃N���C�A���g�� INIT ��Ԃɖ߂�A�������v���Z�X���ăX�^�[�g����B�N���C�A���g�́A�������v���Z�X�����s�����X�^�[�g���鎖�𗘗p�҂ɒm�点��ׂ��ł���(SHOULD)�B

  6. �T�[�o�[�� DHCPRELEASE ���b�Z�[�W�𑗐M���鎖�ŁA�N���C�A���g�̓l�b�g���[�N�A�h���X�̃��[�X��j������I�������Ă��ǂ��B�N���C�A���g�́ADHCPRELEASE ���b�Z�[�W���� 'client identifier' �ɂ���āA�܂��� 'chaddr' �ƃl�b�g���[�N�A�h���X�Ƃɂ���āA�J�����郊�[�X�����ʂ���B�N���C�A���g�����[�X���擾���鎞�� 'client identifier' ���g�p�����ꍇ�A���̃N���C�A���g�� DHCPRELEASE ���b�Z�[�W���œ��� 'client identifier' ���g�p���Ȃ���΂Ȃ�Ȃ�(MUST)�B

3.2 �N���C�A���g-�T�[�o�[�̉�b - �ȑO�Ɋ����Ă��Ă����l�b�g���[�N�A�h���X���ė��p����

�����N���C�A���g���ȑO�Ɋ����Ă��Ă����l�b�g���[�N�A�h���X���L�����Ă���A������ė��p�������Ȃ�΁A���̃N���C�A���g�͑O�̃Z�N�V�����Ő���������‚��̃X�e�b�v���ȗ����邱�Ƃ��o����B�} 4 �̃^�C�����C���́A�N���C�A���g���ȑO�Ɋ����Ă��Ă����l�b�g���[�N�A�h���X���ė��p����ꍇ�́A�T�^�I�ȃT�[�o�[ - �N���C�A���g�̉�b�̎��ԓI�֌W��\���Ă���B

  1. �N���C�A���g�͎��g�̃��[�J���T�u�l�b�g�� DHCPREQUEST ���b�Z�[�W���u���[�h�L���X�g����B���̃��b�Z�[�W�� 'requested IP address' �I�v�V�����ɃN���C�A���g�̃l�b�g���[�N�A�h���X���܂ށB�N���C�A���g�͎��g�̃l�b�g���[�N�A�h���X����M���Ă͂��Ȃ��̂ŁA'ciaddr' �t�B�[���h�𖄂߂Ă͂Ȃ�Ȃ�(MUST NOT)�BBOOTP �����[�G�[�W�F���g�́A����T�u�l�b�g�O�� DHCP �T�[�o�[�ɂ��̃��b�Z�[�W��n���B�N���C�A���g���ȑO�ɃA�h���X���擾���鎞�� 'client identifier' ���g�p���Ă����ꍇ�A�N���C�A���g�͂��� DHCPREQUEST ���b�Z�[�W���ł����� 'client identifier' ���g�p���Ȃ���΂Ȃ�Ȃ�(MUST)�B
  2. �N���C�A���g�̍\���p�����[�^��m���Ă���T�[�o�[�́A���̃N���C�A���g�� DHCPACK ���b�Z�[�W�ʼn�����B�T�[�o�[�́A�N���C�A���g�̃l�b�g���[�N�A�h���X�����Ɏg�p�����ǂ������m�F����ׂ��ł͂Ȃ�(SHOULD NOT)�B�N���C�A���g�͂��̎��_�� ICMP �G�R�[���N�G�X�g���b�Z�[�W�ɉ������Ă��ǂ��B
                   �T�[�o�[        �N���C�A���g     �T�[�o�[
    
                      v                v               v
                      |                |               |
                      |            �������J�n          |
                      |                |               |
                      |                |               |
                      |               /|\              |
                      |  ____________/ | \___________  |
                      | /DHCPREQUEST   |  DHCPREQUEST\ |
                      |/               |              \|
                      |                |               |
                   �\����              |            �\����
                     �ʒu�t��          |              �ʒu�t��
                      |                |               |
                      |\               |              /|
                      | \              |  ___________/ |
                      |  \             | /  DHCPACK    |
                      |   \ _______    |/              |
                      |     DHCPACK\   |               |
                      |            ����������          |
                      |              \ |               |
                      |               \|               |
                      |                |               |
                      |           (�㑱��              |
                      |            DHCPACK��           |
                      |            ���������)         |
                      |                |               |
                      |                |               |
                      v                v               v
    

    �} 4: �ȑO�Ɋ����Ă��Ă����l�b�g���[�N�A�h���X���ė��p����ۂ� DHCP �N���C�A���g�� DHCP �T�[�o�[�Ƃ̊ԂŌ�������郁�b�Z�[�W�̃^�C�����C���}

    �N���C�A���g�̗v���������ȏꍇ(�Ⴆ�΁A���̃N���C�A���g���V�����T�u�l�b�g�Ɉړ����Ă����ꍇ)�A�T�[�o�[�͂��̃N���C�A���g�� DHCPNAK ���b�Z�[�W��Ԃ��ׂ��ł���(SHOULD)�B�T�[�o�[�́A�����̏�񂪐������ƕۏ؂ł��Ȃ��ꍇ�ɂ͉�������ׂ��ł͂Ȃ�(SHOULD NOT)�B�Ⴆ�΁A�ʂ̃T�[�o�[�����L��������؂�̃o�C���f�B���O�̗v����F�������T�[�o�[�́A�T�[�o�[�Ԃň�ѐ����ێ�����ׂ̖����I�ȃ��J�j�Y���𗘗p���Ă���̂ł͂Ȃ�����ADHCPNAK �ʼn�����ׂ��ł͂Ȃ�(SHOULD NOT)�B

    DHCPREQUEST ���b�Z�[�W���� 'giaddr' �� 0x0 �̏ꍇ�A�N���C�A���g�̓T�[�o�[�Ɠ����T�u�l�b�g���ɑ��݂���B�T�[�o�[�̓u���[�h�L���X�g�A�h���X 0xffffffff �� DHCPNAK ���b�Z�[�W���u���[�h�L���X�g���Ȃ���΂Ȃ�Ȃ�(MUST)�B�Ȃ��Ȃ�A�N���C�A���g�͐������l�b�g���[�N�A�h���X��T�u�l�b�g�}�X�N�������Ă��Ȃ������m��Ȃ����AARP ���N�G�X�g�ɉ����Ȃ���������Ȃ��ׂł���B�����łȂ��ꍇ('giaddr' �� 0x0 �ł͂Ȃ��ꍇ)�A�T�[�o�[�� 'giaddr' �ɋL�^����Ă��� BOOTP �����[�G�[�W�F���g�� IP �A�h���X�� DHCPNAK ���b�Z�[�W�𑗐M���Ȃ���΂Ȃ�Ȃ�(MUST)�B���̌ナ���[�G�[�W�F���g�́A���Ƃ��N���C�A���g���V�����l�b�g���[�N�Ɉړ����Ă����Ƃ��Ă� DHCPNAK ���`������悤�ɁA�N���C�A���g�̃n�[�h�E�F�A�A�h���X�ɒ��ڂ��̃��b�Z�[�W��]������B

  3. �N���C�A���g�͍\���p�����[�^���܂� DHCPACK ���b�Z�[�W���󂯎��B�N���C�A���g��(�Z�N�V���� 3.1 ��)�p�����[�^�̍ŏI�m�F���s���ADHCPACK ���b�Z�[�W���Ŏw�肳��Ă��郊�[�X���Ԃ�������B����̃��[�X�́A'client identifier' �ɂ���āA�܂��� 'chaddr' �ƃl�b�g���[�N�A�h���X�Ƃɂ���ĈÖٓI�Ɏ��ʂ����B���̎��_�ŃN���C�A���g�̍\���͊�������B

    DHCPACK ���b�Z�[�W���� IP �A�h���X�����Ɏg�p����Ă��鎖���N���C�A���g�����o�����ꍇ�A�N���C�A���g�̓T�[�o�[�� DHCPDECLINE ���b�Z�[�W�𑗂�A�V�����l�b�g���[�N�A�h���X��v�����鎖�ō\���v���Z�X���ăX�^�[�g���Ȃ���΂Ȃ�Ȃ�(MUST)�B���̓���̓N���C�A���g�� DHCP ��Ԑ}�� INIT ��ԂɈڍs���鎖�Ɠ����ŁA����ɕt���Ă̓Z�N�V���� 4.4 �Ő�������Ă���B

    DHCPNAK ���b�Z�[�W����M�����ꍇ�A�N���C�A���g�͋L�����Ă���l�b�g���[�N�A�h���X���ė��p���鎖�͏o���Ȃ��B����ɃN���C�A���g�͍\���v���Z�X���ăX�^�[�g���鎖�ŐV�����A�h���X��v�����Ȃ���΂Ȃ炸�A���̍ۂɂ̓Z�N�V���� 3.1 �Ő�������Ă���(�ȗ�����Ă��Ȃ�)�葱�����g�p����B���̓���� DHCP ��Ԑ}�� INIT ��ԂɈڍs���鎖�Ɠ����ł���B

    DHCPACK ���b�Z�[�W�� DHCPNAK ���b�Z�[�W����M���Ȃ������ꍇ�A�N���C�A���g�̓^�C���A�E�g���ADHCPREQUEST ���b�Z�[�W���đ��M����B�N���C�A���g�̓Z�N�V���� 4.1 �̍đ��M�A���S���Y���ɂ��������� DHCPREQUEST ���đ��M����B�N���C�A���g�́A�N���C�A���g(�ƁA���̃N���C�A���g�̗��p��)��������߂�O�ɉߓx�ɒ����҂‚��ƂȂ��A�T�[�o�[�ƘA������\���ȉ”\����^����̂ɏ\���ȉ񐔂����ADHCPREQUEST ���đ��M����I��������ׂ��ł���B�Ⴆ�΁A�Z�N�V���� 4.1 �Ő��������悤�ȍđ��M���s���N���C�A���g�́A�������葱���̍ĊJ�̑O�ɁA���v 60 �b�̒x���� 4 ��� DHCPREQUEST ���b�Z�[�W���đ����ėǂ��B�N���C�A���g�����̍đ��A���S���Y�����g�p������� DHCPACK ���b�Z�[�W�� CHCPNAK ���b�Z�[�W����M���Ȃ������ꍇ�A���[�X�����̎c��̊ԁA�ȑO�Ɋ����Ă��Ă����l�b�g���[�N�A�h���X�ƍ\���p�����[�^�Ƃ��g�p���鎖��I�������Ă��ǂ�(MAY)�B����͐} 5 �̃N���C�A���g��ԑJ�ڐ}�ɂ����� BOUND ��ԂɈڍs���鎖�Ɠ����ł���B

  4. �T�[�o�[�� DHCPRELEASE ���b�Z�[�W�𑗐M���鎖�ŁA�N���C�A���g�̓l�b�g���[�N�A�h���X�̃��[�X��j������I�������Ă��ǂ��B�N���C�A���g�� DHCPRELEASE ���b�Z�[�W���� 'client identifier' �ɂ���āA�܂��� 'chaddr' �ƃl�b�g���[�N�A�h���X�Ƃɂ���āA�J�����郊�[�X����ʂ���B

    �N���C�A���g�����[�J���Ƀl�b�g���[�N�A�h���X��ێ�����ꍇ�A�ʏ�A�V���b�g�_�E�����ɂ͂��̃��[�X��j�����Ȃ����ɒ��ӂ��ė~�����B�N���C�A���g�������I�ȃ��[�X�̔j����K�v�Ƃ���ꍇ(�Ⴆ�΁A�N���C�A���g���قȂ�T�u�l�b�g�Ɉړ����悤�Ƃ���ꍇ)�ɂ����A�N���C�A���g�� DHCPRELEASE ���b�Z�[�W�𑗐M���邾�낤�B

3.3 ���Ԓl�̐����ƕ\��

�N���C�A���g�͈�����(�������ł��ǂ�)�̃l�b�g���[�N�A�h���X�̃��[�X���擾����B�v���g�R���S�̂�ʂ��āA���Ԃ͕b�P�ʂŕ\�������B���Ԓl 0xffffffff �� "������(infinity)" ��\���ׂɗ\�񂳂�Ă���B

�N���C�A���g�ƃT�[�o�[�Ƃ͓������������������Ă��Ȃ��Ă��ǂ��ׁADHCP ���b�Z�[�W�ɂ����鎞�Ԃ̓N���C�A���g�̃��[�J���̎����ɒ��ڂ������ΓI�Ȏ��ԂƂ��ĕ\�������B�������� 32 �r�b�g�̕b�P�ʂ̑��Ύ��ԕ\���́A0 ���炨�悻 100 �N�܂ł̎��Ԃ͈̔͂�^������B����� DHCP �Ŏg�p����鑊�Ύ��Ԃ��v��ɂ͏\���ł���B

�O�̒i���ŗ^����ꂽ���[�X���Ԃ̉��߂̃A���S���Y���́A�N���C�A���g�ƃT�[�o�[�Ƃ̎��v�����ΓI�Ɍ݂��Ɉ��肵�Ă���Ɖ��肵�Ă���B��‚̎��v�̗���ɂ��ꂪ����ꍇ�A�T�[�o�[�̓N���C�A���g���̊������؂��O�Ƀ��[�X���؂��ƍl���Ă��ǂ��B�T�[�o�[�͕ۏ؂ׂ̈ɁA���[�J���̃N���C�A���g���f�[�^�x�[�X�ɕۑ��������Ԃ��Z�����[�X���Ԃ��N���C�A���g�ɕԂ��Ă��ǂ��B

3.4 �O���ō\�����ꂽ�l�b�g���[�N�A�h���X�Ƌ��Ɏg�p����p�����[�^���擾����

�N���C�A���g�����炩�̕ʂ̎�i(�Ⴆ�Ύ蓮�ݒ�)�Ńl�b�g���[�N�A�h���X���擾���Ă����ꍇ�A���̑��̃��[�J���̍\���p�����[�^���擾����ׂ� DHCPINFORM ���N�G�X�g���b�Z�[�W���g�p���Ă��ǂ��B���� DHCPINFORM ���b�Z�[�W����M�����T�[�o�[�́A�V�����A�h���X�������Ă鎖�Ȃ��A�����̃o�C���f�B���O���m�F���鎖���Ȃ��A'yiaddr' �𖄂߂邱�Ƃ����[�X���ԃp�����[�^���܂ގ����Ȃ��A�N���C�A���g�ɂƂ��ēK�؂ȔC�ӂ̍\���p�����[�^������ DHCPACK ���b�Z�[�W��g�ݗ��Ă�B�T�[�o�[�� DHCPINFORM ���b�Z�[�W�� 'ciaddr' �t�B�[���h�ɗ^����ꂽ�A�h���X�ɁADHCPACK ���������j�L���X�g����ׂ��ł���(SHOULD)�B

��ѐ��ׂ̈ɃT�[�o�[�� DHCPINFORM ���b�Z�[�W���̃l�b�g���[�N�A�h���X���m�F����ׂ�(SHOULD)�����A�����̃��[�X���m�F���Ă͂Ȃ�Ȃ�(MUST NOT)�B�T�[�o�[�͗v�����Ă����N���C�A���g�ׂ̈̍\���p�����[�^���܂� DHCPACK ���b�Z�[�W���쐬���A���̃N���C�A���g�ɒ��� DHCPACK ���b�Z�[�W�𑗐M����B

3.5 DHCP �ɂ�����N���C�A���g�p�����[�^

�t�^ A �Ƀ��X�g����Ă���S�Ẵp�����[�^�̏�������S�ẴN���C�A���g���K�v�Ƃ���킯�ł͂Ȃ��B�T�[�o�[����N���C�A���g�֑��M����鑽���̃p�����[�^���팸����ׂɁA��‚̎�@�����p�����B���ɁA�啔���̃p�����[�^�� Host Requirements RFC �Œ�`����Ă���f�t�H���g�l�������Ă���: �N���C�A���g�̓T�[�o�[����f�t�H���g�l���㏑������p�����[�^���󂯎��Ȃ������ꍇ�A�����̃f�t�H���g�l���g�p����B���ɁADHCPDISCOVER ���b�Z�[�W�܂��� DHCPREQUEST ���b�Z�[�W���ŁA�N���C�A���g�͎������֐S�������Ă������̃p�����[�^�̃��X�g���T�[�o�[�ɒ񋟂��邱�Ƃ��o����B�N���C�A���g�� DHCPDISCOVER ���b�Z�[�W���Ƀp�����[�^�̃��X�g���܂߂��ꍇ�A�㑱�̑S�Ă� DHCPREQUEST ���b�Z�[�W���ɂ����̃��X�g���܂߂Ȃ���΂Ȃ�Ȃ�(MUST)�B

�N���C�A���g�́A�T�[�o�[���ǂ�قǂ̑傫���� DHCP ���b�Z�[�W���쐬���邩��m�点��ׂɁA'maximum DHCP message size' �I�v�V�������܂߂�ׂ��ł���(SHOULD)�B����ł��N���C�A���g�ɕԂ����p�����[�^�́ADHCP ���b�Z�[�W�̃I�v�V�����Ɋ����Ă�ꂽ�̈���z���Ă��ǂ��B���̏ꍇ�A'file' �t�B�[���h�� 'sname' �t�B�[���h�Ƃ��I�v�V�����̂��߂Ɏg�p����Ă��鎖���A��‚̒lj��I�v�V�����t���O(����̓��b�Z�[�W�� 'options' �t�B�[���h�Ɍ���Ȃ���΂Ȃ�Ȃ�)���\���B

�N���C�A���g�� 'parameter request list' �I�v�V�������܂߂鎖�ŁA�ǂ̍\���p�����[�^�Ɋ֐S������̂����T�[�o�[�ɒm�点�鎖���o����B���̃I�v�V�����̃f�[�^���́A�v�������I�v�V�������^�O�ԍ��ɂ���Ė����I�Ƀ��X�g����B

����ɃN���C�A���g�́ADHCPDISCOVER ���b�Z�[�W���Ńl�b�g���[�N�A�h���X�̒l�ƃ��[�X���Ԃ̒l�Ƃ��������Ă��ǂ��B�N���C�A���g�͓���� IP �A�h���X�������Ă��鎖����������ׂ� 'requested IP address' �I�v�V�������܂߂Ă��ǂ����A�D�݂̃��[�X���Ԃ���������ׂ� 'IP address lease time' �I�v�V�������܂߂Ă��ǂ��B�\���p�����[�^�ł��̂悤�� "�q���g" ��\�����̑��̃I�v�V�������ADHCPDISCOVER ���b�Z�[�W���� DHCPREQUEST ���b�Z�[�W���ŋ��‚���Ă���B�������Ȃ���lj��̃I�v�V�����̓T�[�o�[�ɖ�������Ă��ǂ��A����䂦�A�����̃T�[�o�[����‚��̃I�v�V�����ɑ΂��ē���̒l��Ԃ��Ȃ��Ă��ǂ��B'requested IP address' �I�v�V�����́A�N���C�A���g���ȑO�Ɏ擾���Ă����l�b�g���[�N�p�����[�^���m�F���鎞�� DHCPREQUEST ���b�Z�[�W���ł̂ݖ��߂���B�N���C�A���g�́ABOUND�ARENEWING�A�܂���REBINDING ��Ԃ�IP�A�h���X���������\�����ꂽ���ɂ̂݁A'ciaddr' �t�B�[���h�𖄂߂�B

������ 'requested IP address' ������ DHCPREQUEST ���b�Z�[�W���T�[�o�[����M�����ꍇ�A���̃T�[�o�[�� DHCPNAK ���b�Z�[�W���N���C�A���g�ɕԂ��ׂ�(SHOULD)�ł���A�V�X�e���Ǘ��҂ɂ��̖���񍐂��鎖��I�����Ă��ǂ��B�T�[�o�[�� 'messge' �I�v�V�����ɃG���[���b�Z�[�W���܂߂Ă��ǂ��B

3.6 �����C���^�[�t�F�C�X�����ƒN���C�A���g�ł� DHCP �̗��p

�����̃l�b�g���[�N�C���^�[�t�F�C�X�����ƒN���C�A���g�́A�����̓Ɨ������C���^�[�t�F�C�X�ׂ̈̍\�����p�����[�^���擾����ׂɁA�e�C���^�[�t�F�C�X���ɓƗ����� DHCP ���g�p���Ȃ���΂Ȃ�Ȃ��B

3.7 �N���C�A���g�͂��� DHCP ���g�p����ׂ���

���[�J���̃l�b�g���[�N�p�����[�^���ω�������(�Ⴆ�΁A���[�J���̃l�b�g���[�N�ݒ�̓N���C�A���g�⃆�[�U�[�ɒm���邱�ƂȂ��ω����Ă��ǂ��̂ŁA�V�X�e���N�����⃍�[�J���l�b�g���[�N����̐ؒf��)�ɂ͂��‚ł��AIP �A�h���X�ƃl�b�g���[�N�p�����[�^�Ƃ��Ď擾�܂��͊m�F����ׂɁA�N���C�A���g�� DHCP ���g�p����ׂ��ł���(SHOULD)�B

�N���C�A���g���ȑO�̃l�b�g���[�N�A�h���X���L�����Ă���A���ƒ��[�J���� DHCP �T�[�o�[�ƒʐM�ł��Ȃ��ꍇ�A�N���C�A���g�͈ȑO�̃l�b�g���[�N�A�h���X�����̃��[�X���؂��܂Ŏg�p�������Ă��ǂ��B�N���C�A���g�� DHCP �T�[�o�[�ƒʐM�ł���悤�ɂȂ�O�Ƀ��[�X���؂ꂽ�ꍇ�A�N���C�A���g�͑����ɈȑO�̃l�b�g���[�N�A�h���X�̗��p�𒆎~���Ȃ���΂Ȃ炸�A���̖������[�J���̃��[�U�[�ɒm�点�Ă��ǂ��B

4. DHCP �N���C�A���g�E�T�[�o�[�v���g�R���̋K��

���̃Z�N�V�����ɂ����Ď��B�́ADHCP �T�[�o�[���V�����A�h���X�̗v���𖞂����ׂɃl�b�g���[�N�A�h���X�̃u���b�N�������Ă���Ɖ��肷��B����ɁA�e�T�[�o�[�͊����čς݃A�h���X�ƃ��[�X�Ƃ̃f�[�^�x�[�X�����[�J���̉i���I�ȕۑ��ꏊ�ɕێ����Ă�����̂Ƃ���B

4.1 DHCP ���b�Z�[�W�̍\�z�Ƒ��M

DHCP �̃N���C�A���g�ƃT�[�o�[�Ƃ͋��ɁA���b�Z�[�W�̌Œ�`���̕����̃t�B�[���h�Ɖ•ϒ��̃I�v�V�����̈�̃^�O�t���f�[�^���ڂƂ�lj����鎖�ɂ��ADHCP ���b�Z�[�W���\�z����B�I�v�V�����̈�͍ŏ��� 4 �I�N�e�b�g�� 'magic cookie' (����̓Z�N�V���� 3 �Ő�������Ă���)���܂݁A���̌�ɃI�v�V�����������B�Ō�̃I�v�V�����͒ʏ� 'end' �I�v�V�����łȂ���΂Ȃ�Ȃ��B

DHCP �̓g�����X�|�[�g�v���g�R���Ƃ��� UDP ���g�p����B�N���C�A���g����T�[�o�[�ւ� DHCP ���b�Z�[�W�� 'DHCP server' �|�[�g(67)�ɑ����A�T�[�o�[����N���C�A���g�ւ� DHCP ���b�Z�[�W�� 'DHCP client' �|�[�g(68)�ɑ�����B�����̃l�b�g���[�N�A�h���X�����ƒT�[�o�[(�Ⴆ�΃}���`�z�[���z�X�g)�́A���M���� DHCP ���b�Z�[�W�ɂǂ̃l�b�g���[�N�A�h���X���g�p���Ă��ǂ�(MAY)�B

'server identifier' �t�B�[���h�́ADHCP ���b�Z�[�W�ɂ����� DHCP �T�[�o�[�����ʂ���ׂƁA�N���C�A���g����T�[�o�[�ւ̖ړI�A�h���X�Ƃ��ĂƂ̗����Ŏg�p�����B�����̃l�b�g���[�N�A�h���X�����ƒT�[�o�[�́ADHCP ���b�Z�[�W���Ŏ��������ʂ�����̂Ƃ��āA���g�̎��‘S�Ẵl�b�g���[�N�A�h���X���󂯕t����p�ӂ��o���Ă��Ȃ���΂Ȃ�Ȃ�(MUST)�B���ݓI�ɕs���S�ȃl�b�g���[�N�̐ڑ����ɔz�����āA�T�[�o�[�� 'server identifier' �̃A�h���X�ɁA�T�[�o�[�̒m�����ł��N���C�A���g���瓞�B���Ղ��A�h���X��I�����Ȃ���΂Ȃ�Ȃ�(MUST)�B�Ⴆ�� DHCP �T�[�o�[�� DHCP �N���C�A���g�Ƃ������T�u�l�b�g�ɐڑ����Ă���ꍇ(�����A�N���C�A���g����̃��b�Z�[�W�� 'giaddr' �t�B�[���h���[���̏ꍇ)�A���̃T�[�o�[�� 'server identifier' �Ƃ��Ă��̃T�u�l�b�g��ł̒ʐM�Ɏg�p���Ă���IP�A�h���X��I������ׂ��ł���(SHOULD)�B�����T�[�o�[�����̃T�u�l�b�g��ŕ����� IP �A�h���X���g�p���Ă���Ȃ�A�����̓��ǂ̃A�h���X���g�p���Ă��ǂ��B�T�[�o�[�� DHCP �����[�G�[�W�F���g��ʂ��ă��b�Z�[�W���󂯎�����ꍇ�A(�T�[�o�[���I�������߂�ׂ̂��̑��̂��ǂ����������Ă��Ȃ�����)�T�[�o�[�� 'server identifier' �Ƃ��āA���̃��b�Z�[�W���󂯎�����C���^�[�t�F�C�X�̃A�h���X��I������ׂ��ł���(SHOULD)�BDHCP �N���C�A���g�� DHCP �T�[�o�[�ɑ΂���S�Ẵ��j�L���X�g���N�G�X�g�ɁA'server identifier' �I�v�V�����Œ񋟂��ꂽ IP �A�h���X���g�p���Ȃ���΂Ȃ�Ȃ�(MUST)�B

IP �A�h���X�擾�O�̃N���C�A���g�ɂ�� DHCP ���b�Z�[�W�̃u���[�h�L���X�g�́AIP �w�b�_�̑��M���A�h���X�t�B�[���h�� 0 ���Z�b�g����Ă��Ȃ���΂Ȃ�Ȃ��B

�N���C�A���g����� DHCP ���b�Z�[�W�� 'giaddr' �t�B�[���h����[���ł���ꍇ�A�T�[�o�[�� 'giaddr' �ŕ\����Ă��� BOOTP �����[�G�[�W�F���g�� 'DHCP server' �|�[�g�ɑS�Ẵ��b�Z�[�W�𑗐M����B'giaddr' �t�B�[���h���[���� 'ciaddr' �t�B�[���h����[���ł���ꍇ�A�T�[�o�[�� 'ciaddr' �̃A�h���X�� DHCPOFFER ���b�Z�[�W�� DHCPACK ���b�Z�[�W�Ƃ����j�L���X�g����B'giaddr' ���[���A'ciaddr' ���[���A����Ƀu���[�h�L���X�g�r�b�g���Z�b�g����Ă���ꍇ�A�T�[�o�[�� 0xffffffff �� DHCPOFFER ���b�Z�[�W�� DHCPACK ���b�Z�[�W�Ƃ��u���[�h�L���X�g����B�u���[�h�L���X�g�r�b�g���Z�b�g����Ă��炸�A'giaddr' ���[���A'ciaddr' ���[���̏ꍇ�A�T�[�o�[�̓N���C�A���g�̃n�[�h�E�F�A�A�h���X�� 'yiaddr' �A�h���X�� DHCPOFFER ���b�Z�[�W�� DHCPACK ���b�Z�[�W�Ƃ����j�L���X�g����B�S�Ă̏ꍇ�ɂ����āA'giaddr' ���[���̏ꍇ�A�T�[�o�[�́A�ǂ� DHCPNAK ���b�Z�[�W�� 0xffffffff �Ƀu���[�h�L���X�g����B

DHCP ���b�Z�[�W�̃I�v�V������ 'sname' �t�B�[���h�� 'file' �t�B�[���h�Ƃɉ��������ꍇ�ARFC1533 �ŋK�肳��Ă���l�P�A�Q�܂��͂R������ 'option overload' �I�v�V������ 'options' �t�B�[���h�Ɍ���Ȃ���΂Ȃ�Ȃ�(MUST)�B'option overload' �I�v�V������ 'options' �t�B�[���h�Ɍ����ꍇ�A'options' �t�B�[���h���̃I�v�V������ 'end' �I�v�V�����ŏI�����Ȃ���΂Ȃ炸(MUST)�A�I�v�V�����t�B�[���h�𖄂߂�ׂɂЂƂˆȏ�� 'pad' �I�v�V�������܂�ł��ǂ�(MAY)�B(���� 'options overload' �I�v�V�����Ŏw�����ꂢ�邽�߂Ɏg�p���ł����)'sname' �t�B�[���h���� 'file' �t�B�[���h���Ƃ̃I�v�V�����̓t�B�[���h�̐擪�̃I�N�e�b�g����n�܂�Ȃ���΂Ȃ炸(MUST)�A'end' �I�v�V�����ŏI�����Ȃ���΂Ȃ炸(MUST)�A�t�B�[���h�̎c��𖄂߂� 'pad' �I�v�V�����������Ȃ���΂Ȃ�Ȃ�(MUST)�B'options'�A'sname'�A'file' �̊e�t�B�[���h���̂ǂ̌X�̃I�v�V�������A���S�ɂ��̃t�B�[���h���Ɋ܂܂�Ȃ���΂Ȃ�Ȃ�(MUST)�B�S�Ă� 'option overload' �I�v�V���������߂����悤�ɁA'options' �t�B�[���h���̃I�v�V�����͍ŏ��ɉ��߂���Ȃ���΂Ȃ�Ȃ�(MUST)�B('option overload' �I�v�V�����ɂ�� 'file' �t�B�[���h�� DHCP �I�v�V�������܂�ł��邱�Ƃ������Ă���ꍇ)'file' �t�B�[���h�����ɉ��߂���Ȃ���΂Ȃ炸(MUST)�A���̎��� 'sname' �t�B�[���h�������B

�ЂƂ‚� 'option' �^�O���œn�����l�́A�P�Ƃ̃I�v�V�����ɗL���� 255 �I�N�e�b�g�Ɏ��܂�ɂ͑傫�߂��Ă��ǂ�(�� 'router' �I�v�V���� [21] ���̃��[�^�̃��X�g)�B�I�v�V�����́A���̃I�v�V�����Ɋւ��镶���ŕʂɎw�肳��Ă��Ȃ�����A��x��������鎖���������B�N���C�A���g�͍\���ׂ̈̒P�Ƃ̃��X�g�̒��ɓ����I�v�V�����̕����̃C���X�^���X�l������ɂ‚Ȃ��B

DHCP �N���C�A���g�͑S�Ẵ��b�Z�[�W�̍đ��ɐӔC�����B�N���C�A���g�͍đ��M�Ԋu�̒x�������肷��ׂɁA�����_���Ȏw���֐��I��ރA���S���Y��(randomized exponential backoff algorithm)��g�ݓ��ꂽ�đ��M�헪���̗p���Ȃ���΂Ȃ�Ȃ�(MUST)�B�đ��M�Ԋu�̒x���́A�N���C�A���g�ƃT�[�o�[�Ƃ̊Ԃ̃l�b�g���[�N�̓����Ɋ�āA�T�[�o�[����`������̂ɏ\���Ȏ��Ԃ�^����悤�ȑI��������ׂ��ł���(SHOULD)�B�Ⴆ�� 10Mb/�b�̃C�[�T�l�b�g�ł́A�ŏ��̍đ��M�܂ł̒x���́A4 �b�� -1 ���� + 1�͈̔͂őI�����ꂽ�ϓ��ȗ����l�ɂ���ė��������ꂽ�b���ł���ׂ��ł���(SHOULD)�B��b�ȉ��̐��x�̎��v�����ƒN���C�A���g�́A�񐮐��̗����l��I�����Ă��ǂ��B���̎��̍đ��M�܂ł̒x���́A8 �b�� -1 ���� +1 �͈̔͂őI�����ꂽ�ϓ��ȗ����l�ɂ���ė��������ꂽ�b���ł���ׂ��ł���(SHOULD)�B�đ��M�̒x���́A�㑱�̍đ��M�ł͍ő� 64 �b�܂Ŕ{����������ׂ��ł���(SHOULD)�B�N���C�A���g�͍\���v���Z�X�̐i�x���������̂Ƃ��āA�đ��M�����s���Ă��鎖�����[�U�[�Ɏ����Ă��ǂ�(MAY)�B

'xid' �t�B�[���h�́A������̗v���ɑ΂��� DHCP ���b�Z�[�W����������ׂɃN���C�A���g�ɂ���Ďg�p�����BDHCP �N���C�A���g�́A���̃N���C�A���g�ɂ���Ďg�p����� 'xid' �Ɠ���� 'xid' ���g�p����”\�����ŏ��ɂ���悤�ȕ��@�� 'xid' ��I�����Ȃ���΂Ȃ�Ȃ�(MUST)�B�Ⴆ�΁A�N���C�A���g�̓��u�[�g���閈�Ƀ����_���ȈقȂ鏉�� 'xid' ��I�����A����ȍ~�A���̃��u�[�g�܂ŘA������ 'xid' ���g�p���Ă��ǂ��B�đ��M���ɐV���� 'xid' ��I�����邩�ǂ����͎����ˑ��ł���B�N���C�A���g�͍đ����郁�b�Z�[�W���ɓ��� 'xid' ���ė��p���邩�A�V���� 'xid' ��I�Ԃ���I�����ėǂ��B

�ʏ�ADHCP �T�[�o�[�� BOOTP �����[�G�[�W�F���g�Ƃ́ADHCPOFFER�EDHCPACK�EDHCPNAK�̊e���b�Z�[�W���A���j�L���X�g���g�p���Ē��ڃN���C�A���g�ɓ`���悤�Ǝ��݂�B(IP �w�b�_��)IP �ړI�A�h���X�ɂ� DHCP �� 'yiaddr' �A�h���X���Z�b�g����A�����N�w�̖ړI�A�h���X�� DHCP ��'chaddr' �A�h���X���Z�b�g�����B�s�K�ɂ���‚��̃N���C�A���g�����́A�L���� IP �A�h���X���ݒ肳���܂� IP ���j�L���X�g�f�[�^�O�������󂯎�鎖���o���Ȃ�(IP �A�h���X���ݒ肳���܂ł��̃N���C�A���g�� IP �A�h���X�ɂ͔z�����ꂸ�A�f�b�h���b�N�ɂȂ�)�B

�v���g�R���\�t�g�E�F�A�� IP �A�h���X��ݒ肳���܂Ń��j�L���X�g�� IP �f�[�^�O�������󂯎�鎖�̏o���Ȃ��N���C�A���g�́A���M����S�Ă� DHSPDISCOVER ���b�Z�[�W�܂��� DHCPREQUEST ���b�Z�[�W���� 'flags' �t�B�[���h�� BROADCAST �r�b�g�� 1 �ɃZ�b�g����ׂ��ł���(SHOULD)�BBROADCAST �r�b�g�́ADHCP �T�[�o�[��BOOTP �����[�G�[�W�F���g�Ƃ����̃N���C�A���g�ւ̔C�ӂ̃��b�Z�[�W���A���̃N���C�A���g�̃T�u�l�b�g�Ƀu���[�h�L���X�g����ׂ̃q���g��^����B�v���g�R���\�t�g�E�F�A�� IP �A�h���X��ݒ肳���O�Ƀ��j�L���X�g�� IP �f�[�^�O�������󂯎�鎖�̏o����N���C�A���g�́ABROADCAST �r�b�g�� 0 �ɃN���A����ׂ��ł���(SHOULD)�BBROADCAST �r�b�g�̎g�p�ɔh�����ċN������ɂ‚��āABOOTP �𖾂炩�ɂ��镶��[21]�ŋc�_����Ă���B

DHCP �N���C�A���g�� DHCP ���b�Z�[�W�𒼐ڑ��M�܂��͒��p����(�����A'giaddr' �t�B�[���h�Ń����[�G�[�W�F���g���w�肳��Ă��Ȃ�)�T�[�o�[�܂��̓����[�G�[�W�F���g�́A'flags' �t�B�[���h���� BROADCAST �r�b�g�𒲂ׂ�ׂ��ł���(SHOULD)�B���̃r�b�g�� 1 ���Z�b�g����Ă���ꍇ�A���� DHCP ���b�Z�[�W�́AIP �ړI�A�h���X�� IP �u���[�h�L���X�g�A�h���X(�ʏ� 0xffffffff)���g�p���A�����N�w�ړI�A�h���X�Ƀ����N�w�u���[�h�L���X�g�A�h���X���g�p���� IP �u���[�h�L���X�g�Ƃ��đ��M�����ׂ��ł���(SHOULD)�BBROADCAST �r�b�g�� 0 �ɃN���A����Ă���ꍇ�A���̃��b�Z�[�W�́A'yiaddr' �t�B�[���h�Ŏw�肳�ꂽ IP �A�h���X�A'chaddr' �t�B�[���h�Ŏw�肳�ꂽ�����N�w�A�h���X�ւ� IP ���j�L���X�g�Ƃ��đ��M�����ׂ��ł���(SHOULD)�B���j�L���X�g�����p�s�”\�ȏꍇ�A���̃��b�Z�[�W�́AIP �ړI�A�h���X�Ƃ��� IP �u���[�h�L���X�g�A�h���X(�ʏ� 0xffffffff)�A�����N�w�ړI�A�h���X�Ƃ��ă����N�w�u���[�h�L���X�g�A�h���X���g�p���� IP �u���[�h�L���X�g�Ƃ��đ��M����Ă��ǂ�(MAY)�B

4.2 DHCP �T�[�o�[�̊Ǘ�����

DHCP �T�[�o�[�́A�󂯎�����S�Ă� DHCPDISCOVER �� DHCPREQUEST �Ƃɉ�����K�v�͂Ȃ��B�Ⴆ�΁A���̃l�b�g���[�N�ɐڑ����Ă���N���C�A���g�ւ̌����������ۂ������l�b�g���[�N�Ǘ��҂́A���炩�̕��@�Ŏ��O�ɓo�^�ς݂̃N���C�A���g�ɂ̂� DHCP �T�[�o�[����������悤�ɐݒ肷��I�������Ă��ǂ��BDHCP �d�l�́A�T�[�o�[�ƃN���C�A���g�Ƃ��Θb���鎖��I���������̃N���C�A���g�ƃT�[�o�[�Ƃ̊Ԃ̑Θb�Ɋւ��Ă̂݋L�q���Ă���A�V�X�e���Ǘ��҂��g�p���鎖��]�މ”\���̂���S�Ă̊Ǘ�����Ɋւ��ċL�q���鎖�� DHCP �d�l�͈̔͊O�ł���B����� DHCP �T�[�o�[�̓l�b�g���[�N�Ǘ��҂��]�ޔC�ӂ̐����|���V�[��g�ݍ���ł��ǂ��B

�ꕔ�̊‹��ł́ADHCP �T�[�o�[�͓���̃N���C�A���g�ւ̐������p�����[�^�����肷��ۂɁADHCPDISCOVER ���b�Z�[�W�� DHCPREQUEST ���b�Z�[�W�Ɋ܂܂��x���_�[�N���X�̃I�v�V�����̒l���l������K�v�����邾�낤�B

DHCP �T�[�o�[�̓N���C�A���g�Ƃ��̃��[�X�Ƃ�Ή�������ׂɉ��炩�̃��j�[�N�Ȏ��ʎq���g�p����K�v������B�N���C�A���g�� 'client identifier' �I�v�V�������g�p���Ė����I�Ɏ��ʎq��񋟂��Ă��ǂ�(MAY)�B�N���C�A���g�� 'client identifier' ��񋟂���ꍇ�A���̃N���C�A���g�͌�ɑ����S�Ẵ��b�Z�[�W���œ��� 'client identifier' ���g�p���Ȃ���΂Ȃ炸(MUST)�A�T�[�o�[�͂��̃N���C�A���g�����ʂ���ׂɂ��̎��ʎq���g�p���Ȃ���΂Ȃ�Ȃ�(MUST)�B�N���C�A���g�� 'client identifier' �I�v�V������񋟂��Ȃ��ꍇ�A�T�[�o�[�͂��̃N���C�A���g�����ʂ���ׂ� 'chaddr' �t�B�[���h�̓��e���g�p���Ȃ���΂Ȃ�Ȃ�(MUST)�BDHCP �N���C�A���g�����g�̐ڑ����Ă���T�u�l�b�g���Ń��j�[�N�Ȏ��ʎq�� 'client identifier' �I�v�V�����Ɏg�p���鎖�͏d�v�ł���B�N���C�A���g�̃��j�[�N�Ȏ��ʎq�Ƃ��� 'chaddr' �𗘗p���鎖�́A���̎��ʎq���V�����N���C�A���g�Ɉڂ����̏o����n�[�h�E�F�A�C���^�[�t�F�C�X�ƑΉ����Ă��Ă��ǂ��ׁA�\�����Ȃ����ʂ������N������������Ȃ��B�ꕔ�̃T�C�g�ł́A�R���s���[�^�Ԃł̃n�[�h�E�F�A�C���^�[�t�F�C�X�̈ړ��ɂ���ăN���C�A���g�̃l�b�g���[�N�A�h���X���\�������ύX����鎖�������ׂɁA'client identifier' �Ƃ��Đ������̃V���A���ԍ����g�p����I�������Ă��ǂ��B�A�h���X�̃��[�X�����̃n�[�h�E�F�A�{�b�N�X�ł͂Ȃ� DNS ���ƑΉ�������悤�ɁA'client identifier' �Ƃ��� DNS �����g�p����I�������Ă��ǂ��B

DHCP �N���C�A���g�� DHCPOFFER ���b�Z�[�W����M���� DHCP �T�[�o�[�̒�����ЂƂ‚�I������̂ɂǂ̂悤�Ȑ헪������Ă��ǂ��BDHCP �̃N���C�A���g�����́A���p�҂����� 'vendor class identifier' �̒l��I���o����悤�ȃ��J�j�Y����񋟂���ׂ��ł���(SHOULD)�B

4.3 DHCP �T�[�o�[�̐U�镑��

DHCP �T�[�o�[�́A�N���C�A���g����� DHCP ���b�Z�[�W���A���̃N���C�A���g�ׂ̈ɕۑ����Ă���o�C���f�B���O�̏�ԂɊ�ď�������BDHCP �T�[�o�[�̓N���C�A���g����ȉ��̃��b�Z�[�W���󂯎�鎖���o����B

�\3�́A�T�[�o�[�ɂ�� DHCP ���b�Z�[�W�̃t�B�[���h�ƃI�v�V�����Ƃ̗��p���@�������Ă���B���̃Z�N�V�����̎c��ł́A��蓾����̓��b�Z�[�W���� DHCP �T�[�o�[�̓���ɕt���ċL�q����B

4.3.1 DHCPDISCOVER ���b�Z�[�W

�T�[�o�[���N���C�A���g���� DHCPDISCOVER ���b�Z�[�W���󂯎�������A���̃T�[�o�[�͗v�����Ă����N���C�A���g�ׂ̈̃l�b�g���[�N�A�h���X��I������B���p�”\�ȃA�h���X�������ꍇ�A�T�[�o�[�͂��̖����V�X�e���Ǘ��҂ɕ񍐂���Ƃ����I�������Ă��ǂ��B�A�h���X�����p�”\�ȏꍇ�A�V�����A�h���X�͎��̂悤�ɑI�������ׂ��ł���(SHOULD)�B

�Z�N�V���� 4.2 �Ő�������Ă���悤�ɁA�Ǘ���̗��R����T�[�o�[�͗v�����ꂽ�A�h���X�Ƃ͕ʂ̃A�h���X�������ĂĂ��ǂ�(MAY)���A�󂫃A�h���X�����p�”\�ł����Ă�����̃N���C�A���g�ɃA�h���X�������Ă鎖�����ۂ��Ă��ǂ��B

�ꕔ�̃l�b�g���[�N�A�[�L�e�N�`��(�Ⴆ�΁A�ЂƂ‚̕����l�b�g���[�N�Z�O�����g�Ɋ����Ă�ꂽ��ˆȏ�� IP �T�u�l�b�g�����ƒl�b�g���[�N��)�ł́ADHCP �N���C�A���g�� 'giaddr' �ɏ����ꂽ�A�h���X�ł͂Ȃ��A�ʂ̃T�u�l�b�g����̃A�h���X�������Ă���ꍇ�����鎖�ɒ��ӂ��ė~�����B���� DHCP �́A�N���C�A���g�� 'giaddr' ���̃T�u�l�b�g����A�h���X�������Ă��鎖��v���͂��Ă��Ȃ��ƌ������ł���B�T�[�o�[���ʂ̃T�u�l�b�g��I�����鎖�����R�ł���A�����čς� IP �A�h���X���I�΂����@���L�q���鎖�� DHCP �d�l�͈̔͊O�ł���B

DHCP �̐������I�y���[�V�����Ƃ��Ă͗v������Ȃ����A�T�[�o�[�̓N���C�A���g�����̃T�[�o�[�� DHCPOFFER ���b�Z�[�W�ɉ�����O�ɁA�I�������l�b�g���[�N�A�h���X���ė��p����ׂ��ł͂Ȃ�(SHOULD)�B�T�[�o�[�͂��̃A�h���X�����̃N���C�A���g�ɒ񋟂��ꂽ���̂Ƃ��ċL�^����I�������Ă��ǂ��B

����ɃT�[�o�[�́A�ȉ��̂悤�Ƀ��[�X�̊�����I�����Ȃ���΂Ȃ�Ȃ��B

�t�B�[���h DHCPOFFER DHCPACK DHCPNAK
'op' BOOTREPLY BOOTREPLY BOOTREPLY
'htype' ("Assigned Numbers" RFC���)
'hlen' (�I�N�e�b�g�P�ʂ̃n�[�h�E�F�A�A�h���X��)
'hops' 0 0 0
'xid' �N���C�A���g�� DHCPDISCOVER ���b�Z�[�W����� 'xid' �N���C�A���g�� DHCPREQUEST ���b�Z�[�W����� 'xid' �N���C�A���g�� DHCPREQUEST ���b�Z�[�W����� 'xid'
'secs' 0 0 0
'ciaddr' 0 DHCPREQUEST ����� 'ciaddr'�A�܂��� 0 0
'yiaddr' �N���C�A���g�ɒ�Ă��ꂽ IP �A�h���X �N���C�A���g�Ɋ����Ă�ꂽ IP �A�h���X
'siaddr' ���̃u�[�g�X�g���b�v�T�[�o�[�� IP �A�h���X ���̃u�[�g�X�g���b�v�T�[�o�[�� IP �A�h���X 0
'flags' �N���C�A���g�� DHCPDISCOVER ���b�Z�[�W����� 'flags' �N���C�A���g�� DICPREQUEST ���b�Z�[�W����� 'flags' �N���C�A���g�� DICPREQUEST ���b�Z�[�W����� 'flags'
'giaddr' �N���C�A���g�� DHCPDISCOVER ���b�Z�[�W����� 'giaddr' �N���C�A���g�� DICPREQUEST ���b�Z�[�W����� 'giaddr' �N���C�A���g�� DICPREQUEST ���b�Z�[�W����� 'giaddr'
'chaddr' �N���C�A���g�� DHCPDISCOVER ���b�Z�[�W����� 'chaddr' �N���C�A���g�� DICPREQUEST ���b�Z�[�W����� 'chaddr' �N���C�A���g�� DICPREQUEST ���b�Z�[�W����� 'chaddr'
'sname' �T�[�o�[�z�X�g���܂��̓I�v�V���� �T�[�o�[�z�X�g���܂��̓I�v�V���� (���g�p)
'file' �N���C�A���g�̃u�[�g�t�@�C�����܂��̓I�v�V���� �N���C�A���g�̃u�[�g�t�@�C�����܂��̓I�v�V����
'options' �I�v�V���� �I�v�V���� (���g�p)

�I�v�V���� DHCPOFFER DHCPACK DHCPNAK
Requested IP address MUST NOT MUST NOT MUST NOT
IP address lease time MUST MUST (DHCPREQUEST)
MUST NOT (DHCPINFORM)
MUST NOT
Use 'file'/'sname' fields MAY MAY MUST NOT
DHCP message type DHCPOFFER DHCPACK DHCPNAK
Parameter request list MUST NOT MUST NOT MUST NOT
Message SHOULD SHOULD SHOULD
Client identifier MUST NOT MUST NOT MAY
Vendor class identifier MAY MAY MAY
Server identifier MUST MUST MUST
Maximum message size MUST NOT MUST NOT MUST NOT
All others MAY MAY MUST NOT

�\3: DHCP �T�[�o�[�ɂ���Ďg�p�����t�B�[���h�ƃI�v�V����

��U�l�b�g���[�N�A�h���X�ƃ��[�X�Ƃ����肳���ƁA�T�[�o�[�͒񋟂��ꂽ�\���� DHCPOFFER ���b�Z�[�W���`������B�N���C�A���g���ǂ̃T�[�o�[��I���������Ɋ֌W�Ȃ��N���C�A���g�̐U�镑����\���”\�Ȃ��̂ɂ���ׂɁA�S�Ă� DHCP �T�[�o�[�������p�����[�^��Ԃ����͏d�v�ł���(�������A�V���Ɋ����Ă���l�b�g���[�N�A�h���X�Ƃ�����O�͂���)�B�\���p�����[�^�͈ȉ��̏����ŋK����K�p���đI������Ȃ���΂Ȃ�Ȃ�(MUST)�B�l�b�g���[�N�Ǘ��҂́A�����̃T�[�o�[������̉�����Ԃ������m���ɂ���悤�ɁA������ DHCP �T�[�o�[�Q��ݒ肷��ӔC�����B�T�[�o�[�̓N���C�A���g�Ɉȉ��̓��e��Ԃ��Ȃ���΂Ȃ�Ȃ�(MUST)�B

�N���C�A���g���ǂ� DHCPOFFER ���󂯓���邩��I������̂�������ׂɁA�T�[�o�[�� DHCPOFFER ���b�Z�[�W���̃p�����[�^�����肷��ׂɎg�p���ꂽ 'vendor class identifier' ��Ԃ��I�������Ă��ǂ�(MAY)�B�T�[�o�[�� DHCPOFFER ���b�Z�[�W�� 'xid' �t�B�[���h�� DHCPDISCOVER ���b�Z�[�W�� 'xid' �t�B�[���h��}�����A�v�����Ă����N���C�A���g�ɂ��� DHCPOFFER �𑗐M����B

4.3.2 DHCPREQUEST ���b�Z�[�W

DHCPREQUEST ���b�Z�[�W�́A�T�[�o�[����� DHCPOFFER ���b�Z�[�W�։�����ׂɁA�܂��͈ȑO�Ɋ����Ă��Ă���IP�A�h���X���m�F����ׂɁA�܂��̓l�b�g���[�N�A�h���X�̃��[�X����������ׂɁA�N���C�A���g���瑗�M����ėǂ��BDHCPREQUEST ���b�Z�[�W�� 'server identifier' �I�v�V�������܂�ł���ꍇ�A���̃��b�Z�[�W�� DHCPOFFER ���b�Z�[�W�ւ̉����ł���B�����łȂ���΁A���̃��b�Z�[�W�͊����̃��[�X�̊g���܂��͊m�F�̗v���ł���B�N���C�A���g�� DHCPREQUEST ���b�Z�[�W���� 'client identifier' ���g�p�����ꍇ�A���̃N���C�A���g�͌�ɑ����S�Ẵ��b�Z�[�W�œ��� 'client identifier' ���g�p���Ȃ���΂Ȃ�Ȃ�(MUST)�B�N���C�A���g�� DHCPDISCOVER ���b�Z�[�W���ɗv���p�����[�^�̃��X�g���܂߂��ꍇ�A���̃N���C�A���g�͌�ɑ����S�Ẵ��b�Z�[�W�ɂ��̃��X�g���܂߂Ȃ���΂Ȃ�Ȃ�(MUST)�B

DHCPACK ���b�Z�[�W���̔@���Ȃ�\���p�����[�^���A���̃N���C�A���g�������������� DHCPOFFER ���b�Z�[�W���̃p�����[�^�Ƌ�������ׂ��ł͂Ȃ�(SHOULD NOT)�B�N���C�A���g�͍\���ׂ̈ɂ��� DHCPACK ���b�Z�[�W���̃p�����[�^���g�p����ׂ��ł���(SHOULD)�B

�N���C�A���g�͈ȉ��̂悤�� DHCPREQUEST ���b�Z�[�W�𑗐M����B

4.3.3 DHCPDECLINE ���b�Z�[�W

�T�[�o�[�� DHCPDECLINE ���b�Z�[�W����M�����ꍇ�A�N���C�A���g�͉��炩�̕ʂ̎�i�ɂ���āA�񎦂��ꂽ�l�b�g���[�N�A�h���X�����ɗ��p����Ă��鎖�𔭌����Ă���B�T�[�o�[�͂��̃l�b�g���[�N�A�h���X�𗘗p�s�‚Ƃ��ă}�[�N���Ȃ���΂Ȃ炸(MUST)�A�”\���̂���\����̖������[�J���̃V�X�e���Ǘ��҂ɒm�点��ׂ��ł���(SHOULD)�B

4.3.4 DHCPRELEASE ���b�Z�[�W

DHCPRELEASE ���b�Z�[�W����M�����ꍇ�A�T�[�o�[�͂��̃l�b�g���[�N�A�h���X�𖢊����ĂƂ��ă}�[�N���Ȃ���΂Ȃ�Ȃ��B��ɂ��̃N���C�A���g����̗v���ɉ����ċN���蓾��ė��p�ׂ̈ɁA�T�[�o�[�͂��̃N���C�A���g�̏������p�����[�^�̋L�^��ێ�����ׂ��ł���(SHOULD)�B

4.3.5 DHCPINFORM ���b�Z�[�W

DHCPINFORM ���b�Z�[�W�ɉ����鎞�A�T�[�o�[�� DHCPINFORM ���b�Z�[�W���� 'ciaddr' �t�B�[���h�ŗ^������A�h���X�ɒ��� DHCPACK ���b�Z�[�W�𑗐M����B�T�[�o�[�̓N���C�A���g�Ƀ��[�X�̊����؂ꎞ�Ԃ𑗐M���Ă͂Ȃ炸(MUST NOT)�A'yiaddr' �͖��߂�ׂ��ł͂Ȃ�(SHOULD NOT)�B�T�[�o�[�� DHCPACK ���b�Z�[�W���ɁA�Z�N�V���� 4.3.1 �Œ�`����Ă��邻�̑��̃p�����[�^���܂߂�B

4.3.6 �N���C�A���g���b�Z�[�W

�\ 4 �́A�l�X�ȏ�Ԃɂ�����N���C�A���g����̃��b�Z�[�W�Ԃ̈Ⴂ�������Ă���B


INIT-REBOOT SELECTING RENEWING REBINDING
�u���[�h�L���X�g/���j�L���X�g �u���[�h�L���X�g �u���[�h�L���X�g ���j�L���X�g �u���[�h�L���X�g
�T�[�o�[�� IP MUST NOT MUST MUST NOT MUST NOT
�v������ IP MUST MUST MUST NOT MUST NOT
ciaddr �[�� �[�� IP �A�h���X IP �A�h���X

�\ 4: �l�X�ȏ�Ԃł̃N���C�A���g���b�Z�[�W

4.4 DHCP �N���C�A���g�̐U�镑��

�} 5 �� DHCP �N���C�A���g�̏�ԑJ�ڐ}�ł���B�N���C�A���g�̓T�[�o�[����ȉ��̃��b�Z�[�W���󂯎��”\��������B

�} 5 �� DHCPINFORM ���b�Z�[�W�͎�����Ă��Ȃ��B�N���C�A���g�͒P�� DHCPINFORM ���b�Z�[�W�𑗐M���ADHCPACK ���b�Z�[�W��҂B��U�N���C�A���g�����̃p�����[�^��I������ƁA�\���v���Z�X�͊�������B

�} 5 �̓N���C�A���g�ɂ�� DHCP ���b�Z�[�W���̃t�B�[���h�ƃI�v�V�����Ƃ̗��p�ɕt���Ď����Ă���B���̃Z�N�V�����̎c��ł́A�X�̗L�蓾����̓��b�Z�[�W�ɑ΂��� DHCP �N���C�A���g�̓�����������B����ȍ~�̃Z�N�V�����̐����́A�Z�N�V���� 3.1 �Ő�������Ă��銮�S�ȍ\���葱���ɑΉ����Ă���A����ɑ����Z�N�V�����̕��͂́A�Z�N�V���� 3.2 �Ő�������Ă���ȗ����ꂽ�\���葱���ɑΉ����Ă���B

 --------                               -------
|        | +-------------------------->|       |<-------------------+
| INIT-  | |     +-------------------->| INIT  |                    |
| REBOOT |DHCPNAK/         +---------->|       |<---+               |
|        |�ĊJ   |         |            -------     |               |
 --------  |  DHCPNAK/     |               |                        |
    |      �j���v��        |      -/DHCPDISCOVER���M                |
-/DHCPREQUEST���M          |               |                        |
    |      |     |      DHCPACK            v        |               |
 -----------     |    (�ے�)/         -----------   |               |
|           |    |  DHCPDECLINE���M  |           |                  |
| REBOOTING |    |         |         | SELECTING |<----+            |
|           |    |        /          |           |     |DHCPOFFER/  |
 -----------     |       /            -----------   |  |�������W    |
    |            |      /                  |   |       |            |
DHCPACK/         |     /  +----------------+   +-------+            |
���[�X���L�^�A�^ |    |   v   ���I��/                           |
�C�}T1�AT2�Z�b�g------------  DHCPREQUEST���M       |               |
    |   +----->|            |             DHCPNAK, ���[�X�����؂�/  |
    |   |      | REQUESTING |                  �l�b�g���[�N��~     |
    DHCPOFFER/ |            |                       |               |
    �j��        ------------                        |               |
    |   |        |        |                   -----------           |
    |   +--------+     DHCPACK/              |           |          |
    |              ���[�X���L�^�A�^     -----| REBINDING |          |
    |              �C�}T1�AT2�Z�b�g    /     |           |          |
    |                     |        DHCPACK/   -----------           |
    |                     v     ���[�X���L�^�A�^    ^               |
    +----------------> -------   /�C�}T1�AT2�Z�b�g  |               |
               +----->|       |<---+                |               |
               |      | BOUND |<---+                |               |
  DHCPOFFER, DHCPACK, |       |    |          T2�����؂�/      DHCPNAK/
   DHCPNAK/�j��        -------     |          DHCPREQUEST��    �l�b�g���[�N
               |       | |         |          �u���[�h�L���X�g ��~
               +-------+ |        DHCPACK/          |               |
                    T1�����؂�/   ���[�X���L�^�A�^  |               |
                 ���[�X�����T�[   �C�}T1�AT2�Z�b�g  |               |
                 �o�[��DHCPREQUEST |                |               |
                 ���M    |   ----------             |               |
                         |  |          |------------+               |
                         +->| RENEWING |                            |
                            |          |----------------------------+
                             ----------

�}5: DHCP �N���C�A���g�̏�ԑJ�ڐ}

4.4.1 �������ƃl�b�g���[�N�A�h���X�̊�����

�N���C�A���g�� INIT ��ԂŎn�܂�ADHCPDISCOVER ���b�Z�[�W���`������B�X�^�[�g�A�b�v�ł� DHCP �̗��p��񓯊�������ׂɁA�N���C�A���g�� 1 �b���� 10 �b�̊Ԃ̃����_���Ȏ��Ԃ����ҋ@����ׂ��ł���(SHOULD)�B�N���C�A���g�� 'ciaddr' �� 0x00000000 ���Z�b�g����B�N���C�A���g�� 'parameter request list' �I�v�V�������܂߂鎖�œ���̃p�����[�^��v�����Ă��ǂ�(MAY)�B�N���C�A���g�� 'requested IP address' �� 'IP address lease time' �Ƃ��܂߂鎖�ŁA�l�b�g���[�N�A�h���X�⃊�[�X���Ԃ��Ă��Ă��ǂ�(MAY)�BDHCP �������b�Z�[�W���K�v�Ȃ�΁A�N���C�A���g�� 'chaddr' �t�B�[���h�Ɏ��g�̃n�[�h�E�F�A�A�h���X���܂߂Ȃ���΂Ȃ�Ȃ�(MUST)�B�Z�N�V���� 4.2 �ŋc�_�����悤�ɁA�N���C�A���g�� 'client identifier' �I�v�V�����Ƀn�[�h�E�F�A�A�h���X�Ƃ͈قȂ�ŗL���ʎq���܂߂Ă��ǂ�(MAY)�B�N���C�A���g�� DHCPDISCOVER ���b�Z�[�W���ɗv���p�����[�^�̃��X�g���܂߂��ꍇ�A���̃N���C�A���g�͌㑱�̑S�Ẵ��b�Z�[�W�ɂ��̃��X�g���܂߂Ȃ���΂Ȃ�Ȃ�(MUST)�B

�N���C�A���g�̓����_���ȃg�����U�N�V�������ʎq�𐶐��E�L�^���A'xid' �t�B�[���h�ɂ��̎��ʎq��}������B��Ƀ��[�X�̊����؂���v�Z����ׂɁA�N���C�A���g�͎��g�̃��[�J�����Ԃ��L�^����B�N���C�A���g�� IP �u���[�h�L���X�g�A�h���X 0xffffffff �� 'DHCP server' UDP�|�[�g�� DHCPDISCOVER ���u���[�h�L���X�g����B

�������� DHCPOFFER ���b�Z�[�W�� 'xid' ���ŐV�� DHCPDISCOVER ���b�Z�[�W�� 'xid' �ƈ�v���Ȃ��ꍇ�A���� DHCPOFFER ���b�Z�[�W�͈ÖٓI�ɔj������Ȃ���΂Ȃ�Ȃ��B���������@���Ȃ� DHCPACK ���b�Z�[�W���ÖٓI�ɔj������Ȃ���΂Ȃ�Ȃ��B

�N���C�A���g�͈����Ԃɓn���� DHCPOFFER ���b�Z�[�W�����W���A(�����炭������)�󂯎���� DHCPOFFER ���b�Z�[�W�̒�����ЂƂ�(�Ⴆ�΍ŏ��� DHCPOFFER ���b�Z�[�W�A���邢�͈ȑO�ɗ��p�����T�[�o�[����� DHCPOFFER ���b�Z�[�W)��I�����ADHCPOFFER ���b�Z�[�W���� 'server identifier' �I�v�V��������T�[�o�[�̃A�h���X�𒊏o����B�N���C�A���g�����b�Z�[�W�����W���鎞�ԂƁA��������ЂƂ‚� DHCPOFFER ��I�����邽�߂Ɏg�p�����d�g�݂Ƃ͎����ˑ��ł���B

�t�B�[���h DHCPDISCOVER
DHCPINFORM
DHCPREQUEST DHCPDECLINE,
DHCPRELEASE
'op' BOOTREQUEST BOOTREQUEST BOOTREQUEST
'htype' ("Assigned Numbers" RFC ����)
'hlen' (�I�N�e�b�g�P�ʂ̃n�[�h�E�F�A�A�h���X��)
'hops' 0 0 0
'xid' �N���C�A���g�ɂ���đI�� �T�[�o�[�� DHCPOFFER ���b�Z�[�W�� 'xid �N���C�A���g�ɂ���đI��
'secs' 0 �܂��� DHCP �v���Z�X���J�n����Ă���̕b�� 0 �܂��� DHCP �v���Z�X���J�n����Ă���̕b�� 0
'flags' �N���C�A���g���u���[�h�L���X�g�ł̉�����v������ꍇ�� 'BROADCAST' �t���O���Z�b�g �N���C�A���g���u���[�h�L���X�g�ł̉�����v������ꍇ�� 'BROADCAST' �t���O���Z�b�g
'ciaddr' 0(DHCPDISCOVER)
�N���C�A���g�̃l�b�g���[�N�A�h���X(DHCPINFORM)
0 �܂��̓N���C�A���g�̃l�b�g���[�N�A�h���X(BOUND/RENEW/REBIND) 0(DHCPDECLINE)
�l�b�g���[�N�A�h���X(DHCPRELEASE)
'yiaddr' 0 0 0
'siaddr' 0 0 0
'giaddr' 0 0 0
'chaddr' �N���C�A���g�̃n�[�h�E�F�A�A�h���X �N���C�A���g�̃n�[�h�E�F�A�A�h���X �N���C�A���g�̃n�[�h�E�F�A�A�h���X
'sname' 'sname/file' �I�v�V�������w�肳��Ă���ꍇ�̓I�v�V�����A����ȊO�ł͖��g�p 'sname/file' �I�v�V�������w�肳��Ă���ꍇ�̓I�v�V�����A����ȊO�ł͖��g�p (���g�p)
'file' 'sname/file' �I�v�V�������w�肳��Ă���ꍇ�̓I�v�V�����A����ȊO�ł͖��g�p 'sname/file' �I�v�V�������w�肳��Ă���ꍇ�̓I�v�V�����A����ȊO�ł͖��g�p (���g�p)
'options' �I�v�V���� �I�v�V���� (���g�p)


�I�v�V���� DHCPDISCOVER
DHCPINFORM
DHCPREQUEST DHCPDECLINE,
DHCPRELEASE




�v�� IP �A�h���X
(Requested IP address)
MAY(DISCOVER)
MUST NOT(INFORM)
MUST (SELECTING �܂��� INIT-REBOOT �̎�)
MUST NOT (BOUND �܂��� RENEWING �̎�)
MUST (DHCPDECLINE),
MUST NOT (DHCPRELEASE)
IP �A�h���X���[�X����
(IP address lease time)
MAY(DISCOVER)
MUST NOT(INFORM)
MAY MUST NOT
'file'/'sname' �t�B�[���h�̎g�p MAY MAY MAY
DHCP ���b�Z�[�W�^�C�v
(DHCP message type)
DHCPDISCOVER/
DHCPINFORM
DHCPREQUEST DHCPDECLINE/
DHCPRELEASE
�N���C�A���g���ʎq
(Client identifier)
MAY MAY MAY
�x���_�[�N���X���ʎq
(Vendor class identifier)
MAY MAY MUST NOT
�T�[�o�[���ʎq
(Server identifier)
MUST NOT MUST (SELECTING �̌�)
MUST NOT (INIT-REBOOT�ABOUND�ARENEWING�AREBINDING �̌�)
MUST
�p�����[�^�v�����X�g
(Parameter request list)
MAY MAY MUST NOT
�ő僁�b�Z�[�W�T�C�Y
(Maximum message size)
MAY MAY MUST NOT
���b�Z�[�W
(Message)
SHOULD NOT SHOULD NOT SHOULD
�T�C�g�ŗL�̃I�v�V���� MAY MAY MUST NOT
���̑� MAY MAY MUST NOT

�\5: DHCP �N���C�A���g�̃t�B�[���h�ƃI�v�V����

�p�����[�^���󂯓���”\�ȏꍇ�A�N���C�A���g�́A�p�����[�^��񋟂��ė����T�[�o�[�̃A�h���X�� 'server identifier' �t�B�[���h����ǂݎ��ADHCPREQUEST �u���[�h�L���X�g���b�Z�[�W�� 'server identifier' �t�B�[���h�ɂ��̃A�h���X�����đ��M����B��U�T�[�o�[����� DHCPACK ���b�Z�[�W�����B����ƁA�N���C�A���g�͏���������ABOUND ��ԂɈڍs����BDHCPREQUEST ���b�Z�[�W�� DHCPOFFER ���b�Z�[�W�Ɠ��� 'xid' ���܂ށB�N���C�A���g�͌��̗v��������ꂽ������ DHCPACK ���b�Z�[�W�̃��[�X�Ԋu�Ƃ̍��v�����[�X���������Ƃ��ċL�^����B�N���C�A���g�͂��̃A�h���X�����ɗ��p����Ă��Ȃ������m���ɂ���ׂɁA�����ꂽ�A�h���X�̊m�F�����s����ׂ��ł���(SHOULD)�B�Ⴆ�΃N���C�A���g�� ARP ���T�|�[�g����l�b�g���[�N��ɑ��݂���ꍇ�A�N���C�A���g�͒񎦂��ꂽ���e�ɑ΂��� ARP ���N�G�X�g�𔭍s���Ă��ǂ��B�񎦂��ꂽ�A�h���X�ɑ΂��� ARP ���N�G�X�g���u���[�h�L���X�g����ہA����T�u�l�b�g��̑��̃z�X�g�� ARP �L���b�V���̍����������ׂɁA�N���C�A���g�͑��M���n�[�h�E�F�A�A�h���X�Ƃ��Ď��g�̃n�[�h�E�F�A�A�h���X�𖄂߁A���M�� IP �A�h���X�Ƃ��� 0 ��ݒ肵�Ȃ���΂Ȃ�Ȃ��B���̃l�b�g���[�N�A�h���X�����Ɏg�p����Ă��鎖�����������ꍇ�A�N���C�A���g�̓T�[�o�[�� DHCPDECLINE ���b�Z�[�W�𑗐M���Ȃ���΂Ȃ�Ȃ�(MUST)�B�V���� IP �A�h���X���A�i�E���X���A����T�u�l�b�g��̃z�X�g�̑S�Ă̌Â� ARP �L���b�V���G���g���[���N���A����ׂɁA�N���C�A���g�� ARP �������u���[�h�L���X�g����ׂ��ł���(SHOULD)�B

4.4.2 ���m�̃l�b�g���[�N�A�h���X�ł̏�����

�N���C�A���g�� INIT-REBOOT ��ԂŎn�܂�ADHCPREQUEST ���b�Z�[�W�𑗐M����B�N���C�A���g�� DHCPREQUEST ���b�Z�[�W���� 'requested IP address' �I�v�V�����Ƃ��āA�����̒m���Ă���l�b�g���[�N�A�h���X��}�����Ȃ���΂Ȃ�Ȃ�(MUST)�B�N���C�A���g�̓����_���ȃg�����U�N�V�������ʎq�𐶐��E�L�^���A'xid' �t�B�[���h�ɂ��̎��ʎq��}������B��Ƀ��[�X�̊����؂���v�Z����ׂɁA�N���C�A���g�͎��g�̃��[�J���������L�^����B�N���C�A���g�� DHCPREQUEST ���b�Z�[�W���� 'server identifier' ���܂߂Ă͂Ȃ�Ȃ�(MUST NOT)�B���̌�N���C�A���g�́A���[�J���̃n�[�h�E�F�A�u���[�h�L���X�g�A�h���X��ŁA'DHCP server' UDP �|�[�g�ɑ΂��� DHCPREQUEST ���u���[�h�L���X�g����B

��U�N���C�A���g�� DHCPREQUEST ���b�Z�[�W���� 'xid' �t�B�[���h�ƈ�v���� DHCPACK ���b�Z�[�W���C�ӂ̃T�[�o�[���瓞�B����ƁA�N���C�A���g�͏���������ABOUND ��ԂɈڍs����B�N���C�A���g�́ADHCPREQUEST ���b�Z�[�W������ꂽ������ DHCPACK ���b�Z�[�W�̃��[�X�Ԋu�Ƃ̍��v�����[�X���������Ƃ��ċL�^����B

4.4.3 �O���Ŋ����Ă�ꂽ�l�b�g���[�N�A�h���X�ł̏�����

�N���C�A���g�� DHCPINFORM ���b�Z�[�W���M����B�N���C�A���g�́A'parameter request list' �I�v�V�������܂߂鎖�œ���̍\���p�����[�^��v�����Ă��ǂ��B�N���C�A���g�̓����_���ȃg�����U�N�V�������ʎq�𐶐��E�L�^���A'xid' �t�B�[���h�ɂ��̎��ʎq��}������B�N���C�A���g�� 'ciaddr' �t�B�[���h�Ɏ������g�̃l�b�g���[�N�A�h���X������B�N���C�A���g�̓��[�X���ԃp�����[�^��v������ׂ��ł͂Ȃ�(SHOULD NOT)�B

���ɃN���C�A���g�́A���� DHCP �T�[�o�[�̃A�h���X��m���Ă���΂��̃T�[�o�[�� DHCPINFORM �����j�L���X�g���A�m��Ȃ���Ό���I��(�S�� 1 ��)�u���[�h�L���X�g�A�h���X�Ƀ��b�Z�[�W���u���[�h�L���X�g����BDHCPINFORM ���b�Z�[�W�� 'DHCP server' UDP �|�[�g�Ɍ������Ȃ���΂Ȃ�Ȃ�(MUST)�B

��U�N���C�A���g�� DHCPINFORM ���b�Z�[�W���� 'xid' �t�B�[���h�ƈ�v���� DHCPACK ���b�Z�[�W���C�ӂ̃T�[�o�[���瓞�B����ƁA�N���C�A���g�͏����������B

�N���C�A���g���Ó��Ȏ��ԓ�(60 �b�ԁA�܂��̓Z�N�V���� 4.1�� �������^�C���A�E�g���g�p���Ă���Ȃ� 4 ��̍Ď��s�̊�)�� DHCPACK ���󂯎��Ȃ������ꍇ�A���̖������[�U�[�ɒm�点�郁�b�Z�[�W��\�����A�t�^ A �̓K���ȃf�t�H���g�l�����ꂼ��g�p���āA�l�b�g���[�N�������J�n����ׂ��ł���(SHOULD)�B

4.4.4 �u���[�h�L���X�g�ƃ��j�L���X�g�̎g�p

DHCP �T�[�o�[�̃A�h���X��m���Ă���̂ł͂Ȃ�����ADHCP �N���C�A���g�� DHCPDISCOVER�ADHCPREQUEST�ADHCPINRFORM �̊e���b�Z�[�W���u���[�h�L���X�g����B�N���C�A���g�̓T�[�o�[�� DHCPRELEASE ���b�Z�[�W�����j�L���X�g����B�N���C�A���g���T�[�o�[�ɂ���Ē񋟂��ꂽ IP �A�h���X���g�p�����ۂ���Ȃ�A�N���C�A���g�� DHCPDECLINE ���b�Z�[�W���u���[�h�L���X�g����B

INIT ��Ԃ܂��� REBOOTING ��Ԃɂ����� DHCP �N���C�A���g�� DHCP �T�[�o�[�̃A�h���X��m���Ă���ꍇ�A�N���C�A���g�� DHCPDISCOVER �� DHCPREQUEST �� IP �u���[�h�L���X�g�A�h���X�ł͂Ȃ��A���̃��j�L���X�g�A�h���X���g�p���Ă��ǂ��B���l�Ɋ��m�� DHCP �T�[�o�[�� DHCPINFORM ���b�Z�[�W�𑗐M����ꍇ�ɂ��A�N���C�A���g�̓��j�L���X�g���g�p���Ă��ǂ��B�N���C�A���g�����m�� DHCP �T�[�o�[�� IP �A�h���X���� DHCP ���b�Z�[�W����̉������󂯎��Ȃ������ꍇ�ADHCP �N���C�A���g�� IP �u���[�h�L���X�g�A�h���X���g�p����Ƃ����O�̏�Ԃɖ߂��Ă��ǂ��B

4.4.5 �Ď擾�Ɗ����؂�

�N���C�A���g�� T1 �� T2 �Ƃ̓��A�l�b�g���[�N�A�h���X�̃��[�X�̉��������݂鎞�����w�肷��BT1 �́A�N���C�A���g�� RENEWING ��Ԃɓ���A���̃N���C�A���g�̃l�b�g���[�N�A�h���X�𔭍s�����T�[�o�[�ɘA�������݂鎞�ł���BT2 �́A�N���C�A���g�� REBINDING ��Ԃɓ���A�C�ӂ̃T�[�o�[�ɘA�������݂鎞�ł���BT1 �� T2 ������łȂ���΂Ȃ炸(MUST)�A���ꂼ��N���C�A���g�̃��[�X�������؂�ɂȂ�����O�łȂ���΂Ȃ�Ȃ�(MUST)�B

���v�̓����̕K�v���������ׂɁA�I�v�V�������� T1 �� T2 �Ƃ͑��Ύ��ԂƂ��ĕ\�������[2]�B

���� T1 �ɂȂ�ƃN���C�A���g�� RENEWING ��ԂɈڍs���A(���j�L���X�g�o�R��)���[�X����������ׂ� DHCPREQUEST ���b�Z�[�W���T�[�o�[�ɑ��M����B�N���C�A���g�� DHCPREQUEST �� 'ciaddr' �t�B�[���h�Ɏ��g�̌��݂̃l�b�g���[�N�A�h���X���Z�b�g����B�N���C�A���g�̓��[�X�����������v�Z����ׂɁADHCPREQUEST ���b�Z�[�W�𑗐M�������̃��[�J�����Ԃ��L�^����B�N���C�A���g�� DHCPREQUEST ���b�Z�[�W���� 'server identifier' ���܂߂Ă͂Ȃ�Ȃ�(MUST NOT)�B

'xid' �𔺂��ē������A�N���C�A���g�� DHCPREQUEST ���b�Z�[�W�� 'xid' �Ƃ͈�v���Ȃ��S�Ă� DHCPACK ���b�Z�[�W�́A�ÖٓI�ɔj�������B�N���C�A���g���T�[�o�[���� DHCPACK ����M�������A�N���C�A���g�� DHCPREQUEST ���b�Z�[�W�𑗐M���������� DHCPACK ���b�Z�[�W���̃��[�X�Ԋu�Ƃ̍��v�����[�X���������Ƃ��Čv�Z����B�N���C�A���g������悭���g�̃l�b�g���[�N�A�h���X���擾�����ꍇ�ABOUND ��Ԃɖ߂�A�l�b�g���[�N�����𑱂��ėǂ��B

���� T2 �܂ł� DHCPACK ���������Ȃ��ꍇ�A�N���C�A���g�� REBINDING ��ԂɈڍs���A���[�X����������ׂ� DHCPREQUEST ���b�Z�[�W��(�u���[�h�L���X�g�o�R��)���M����B�N���C�A���g�� DHCPREQUEST ���� 'ciaddr' �t�B�[���h�Ɏ��g�̌��݂̃l�b�g���[�N�A�h���X���Z�b�g����B�N���C�A���g�� DHCPREQUEST ���b�Z�[�W���� 'server identifier' ���܂߂Ă͂Ȃ�Ȃ�(MUST NOT)�B

���� T1 �� T2 �Ƃ́A�I�v�V������ʂ��ăT�[�o�[�ɂ���č\���”\�ł���BT1 �� (0.5 * duration_of_lease) ���f�t�H���g�AT2 �� (0.875 * duration_of_lease) ���f�t�H���g�ł���B�N���C�A���g�ɂ��Ď擾�̓������������ׂɁA���� T1 �� T2 �Ƃ͌Œ�l�̋ߕӂ̃����_���� "�����܂��Ȓl(fuzz)" ���I�΂��ׂ��ł���(SHOULD)�B

T1 �ɐ旧���āA�N���C�A���g�͎��g�̃��[�X���X�V�܂��͉������鎖��I�����Ă��ǂ�(MAY)�B�T�[�o�[�̓l�b�g���[�N�Ǘ��҂ɂ���Đݒ肳�ꂽ�|���V�[�ɂ��������āA�N���C�A���g�̃��[�X���������鎖��I�����Ă��ǂ�(MAY)�B�T�[�o�[�� T1 �� T2 �Ƃ�Ԃ��ׂ�(SHOULD)�ł���A���̒l�̓��[�X�̎c��̎��Ԃ��l�����ăI���W�i���̒l���璲�������ׂ��ł���(SHOULD)�B

RENEWING ��Ԃ� REBINDING ��ԂƂɂ����ăN���C�A���g�� DHCPREQUEST ���b�Z�[�W�ւ̉�������M���Ȃ������ꍇ�ADHCPREQUEST ���đ��M����O�ɍŒ� 60 �b�ŁA(RENEWING ��Ԃ̏ꍇ)T2 �܂ł̎c�莞�Ԃ̔����̎��ԁA�܂���(REBINDING ��Ԃ̏ꍇ)�c��̃��[�X���Ԃ̔����̎��ԁA�N���C�A���g�͑ҋ@����ׂ��ł���(SHOULD)�B

�N���C�A���g�� DHCPACK ����M����O�Ƀ��[�X���؂ꂽ�ꍇ�A�N���C�A���g�� INIT ��ԂɈڍs���A���̑S�Ẵl�b�g���[�N�����𑦍��ɒ�~���A���������N���C�A���g������������Ă��Ȃ����̂悤�Ƀl�b�g���[�N�p�����[�^��v�����Ȃ���΂Ȃ�Ȃ�(MUST)�B���̌�A�ȑO�̃l�b�g���[�N�A�h���X�������Ă� DHCPACK �����̃N���C�A���g���󂯎�����ꍇ�A�N���C�A���g�̓l�b�g���[�N�����𑱂���ׂ��ł���(SHOULD)�B�N���C�A���g���V�����l�b�g���[�N�A�h���X��^����ꂽ�ꍇ�A�N���C�A���g�͈ȑO�̃l�b�g���[�N�A�h���X���g�p�������Ă͂Ȃ炸(MUST NOT)�A���̖������[�J�����[�U�[�ɒm�点��ׂ��ł���(SHOULD)�B

4.4.6 DHCPRELEASE

�N���C�A���g�������Ɋ����Ă�ꂽ�l�b�g���[�N�A�h���X�����͂�K�v�Ƃ��Ȃ��Ȃ����ꍇ(�Ⴆ�΃N���C�A���g���V���b�g�_�E������ꍇ)�A�N���C�A���g�̓T�[�o�[�� DHCPRELEASE ���b�Z�[�W�𑗐M����BDHCP �̐���������� DHCPRELEASE ���b�Z�[�W�̑��M�Ɉˑ����Ȃ����ɒ��ӂ��ė~�����B

5. �ӎ�

DHCP �Ƃ��̕����Ƃ̔��W�ɂ����� DHC WG �̑����̃����o�[(���O��������ɂ͑�������!)�̔���m��Ȃ��O�����ȓw�͂ɒ��҂͊��ӂ��Ă���B

J Allard�A������ Mike Carney�ADave Lapp�AFred Lien�AJohn Mendonca �́ADHCP ���݉^�p�����͉�c�̑g�D�ɂ�����w�͂Ɋ��ӂ��A����q�ׂ�B

���̕����̔��W�̈ꕔ�́ACorporation for National Research Initiatives (CNRI)�ABucknell University �� Sun Microsystems �Ƃɂ��⏕�ɂ���ăT�|�[�g����Ă���B

6. �Q�l����

[1] Acetta, M., "Resource Location Protocol", RFC 887, CMU, December 1983.

[2] Alexander, S., and R. Droms, "DHCP Options and BOOTP Vendor Extensions", RFC 1533, Lachman Technology, Inc., Bucknell University, October 1993.

[3] Braden, R., Editor, "Requirements for Internet Hosts -- Communication Layers", STD 3, RFC 1122, USC/Information Sciences Institute, October 1989.

[4] Braden, R., Editor, "Requirements for Internet Hosts -- Application and Support, STD 3, RFC 1123, USC/Information Sciences Institute, October 1989.

[5] Brownell, D, "Dynamic Reverse Address Resolution Protocol(DRARP)", Work in Progress.

[6] Comer, D., and R. Droms, "Uniform Access to Internet Directory Services", Proc. of ACM SIGCOMM '90 (Special issue of Computer Communications Review), 20(4):50--59, 1990.

[7] Croft, B., and J. Gilmore, "Bootstrap Protocol (BOOTP)", RFC 951,Stanford and SUN Microsystems, September 1985.

[8] Deering, S., "ICMP Router Discovery Messages", RFC 1256, Xerox PARC, September 1991.

[9] Droms, D., "Interoperation between DHCP and BOOTP", RFC 1534,Bucknell University, October 1993.

[10] Finlayson, R., Mann, T., Mogul, J., and M. Theimer, "A Reverse Address Resolution Protocol", RFC 903, Stanford, June 1984.

[11] Gray C., and D. Cheriton, "Leases: An Efficient Fault-Tolerant Mechanism for Distributed File Cache Consistency", In Proc. of the Twelfth ACM Symposium on Operating Systems Design, 1989.

[12] Mockapetris, P., "Domain Names -- Concepts and Facilities", STD 13, RFC 1034, USC/Information Sciences Institute, November 1987.

[13] Mockapetris, P., "Domain Names -- Implementation and Specification", STD 13, RFC 1035, USC/Information Sciences Institute, November 1987.

[14] Mogul J., and S. Deering, "Path MTU Discovery", RFC 1191, November 1990.

[15] Morgan, R., "Dynamic IP Address Assignment for Ethernet Attached Hosts", Work in Progress.

[16] Postel, J., "Internet Control Message Protocol", STD 5, RFC 792, USC/Information Sciences Institute, September 1981.

[17] Reynolds, J., "BOOTP Vendor Information Extensions", RFC 1497, USC/Information Sciences Institute, August 1993.

[18] Reynolds, J., and J. Postel, "Assigned Numbers", STD 2, RFC 1700, USC/Information Sciences Institute, October 1994.

[19] Jeffrey Schiller and Mark Rosenstein. A Protocol for the Dynamic Assignment of IP Addresses for use on an Ethernet. (Available from the Athena Project, MIT), 1989.

[20] Sollins, K., "The TFTP Protocol (Revision 2)", RFC 783, NIC, June 1981.

[21] Wimer, W., "Clarifications and Extensions for the Bootstrap Protocol", RFC 1542, Carnegie Mellon University, October 1993.

7. �Z�L�����e�B�l�@

DHCP �͖{���I�Ɉ��S�ł͂Ȃ� UDP �� IP �Ƃ̏�ɒz����Ă���B����� DHCP �́A��ʂɃ����[�g�̃f�B�X�N���X�z�X�g�̂��ȒP�Ȉێ����”\�ɂ��鎖��ړI�Ƃ��Ă���B�����炭�s�”\�ł͂Ȃ����낤���A���̂悤�ȃz�X�g���p�X���[�h�⌮�ɂ���č\�����鎖�͍���•s�ւł��낤�B����䂦�ɁA���݂̌`�� DHCP �͑S�����S�ł͂Ȃ��B

���‚���Ȃ� DHCP �T�[�o�[���ȒP�ɃZ�b�g�A�b�v�ł���B���̗l�ȃT�[�o�[�́A�Ԉ�������邢�͏d������ IP �A�h���X��A�Ԉ����(���[�^�X�v�[�t�B���O�����܂�)�o�H���A�Ԉ�����h���C���l�[���T�[�o�[�A�h���X(�l�[���T�[�o�[�X�v�[�t�B���O�Ȃ�)���̂悤�ȁA����������{�I�ɕ��􂵂����𑗐M���鎖���o����B���̎�̏�񂪎g�p�����ƁA�U���҂͍U�����Ă���g�D�𖾂炩�ɂ���ɏ��‚��鎖���o����B

���ӂ̂��� DHCP �N���C�A���g�͐������N���C�A���g�ɂȂ肷�܂��A�������N���C�A���g�ׂ̈ɈӐ}����Ă���������W���鎖���o���邾�낤�B���\�[�X�̓��I�\�����g�p����Ă���ꍇ�A���ӂ̂���N���C�A���g�͎��g�ׂ̈ɑS�Ẵ��\�[�X��v�����鎖���ł��A����ɂ���Đ������N���C�A���g�ׂ̈̃��\�[�X�����ۂ����鎖���o���邾�낤�B

8. ���҂̃A�h���X

Ralph Droms
Computer Science Department
323 Dana Engineering
Bucknell University
Lewisburg, PA 17837

Phone: (717) 524-1145
EMail: [email protected]

A. �z�X�g�\���p�����[�^

IP-layer_parameters,_per_host:_

Be a router on/off HRC 3.1
Non-local source routing on/off HRC 3.3.5
Policy filters for non-local source routing (list) HRC 3.3.5
Maximum reassembly size integer HRC 3.3.2
Default TTL integer HRC 3.2.1.7
PMTU aging timeout integer MTU 6.6
MTU plateau table (list) MTU 7

IP-layer_parameters,_per_interface:_

IP address (address) HRC 3.3.1.6
Subnet mask (address mask) HRC 3.3.1.6
MTU integer HRC 3.3.3
All-subnets-MTU on/off HRC 3.3.3
Broadcast address flavor 0x00000000/0xffffffff HRC 3.3.6
Perform mask discovery on/off HRC 3.2.2.9
Be a mask supplier on/off HRC 3.2.2.9
Perform router discovery on/off RD 5.1
Router solicitation address (address) RD 5.1
Default routers, list of:
router address
preference level

(address)
integer

HRC 3.3.1.6
HRC 3.3.1.6
Static routes, list of:
destination
destination mask
type-of-service
first-hop router
ignore redirects
PMTU
perform PMTU discovery

(host/subnet/net)
(address mask)
integer
(address)
on/off
integer
on/off

HRC 3.3.1.2
HRC 3.3.1.2
HRC 3.3.1.2
HRC 3.3.1.2
HRC 3.3.1.2
MTU 6.6
MTU 6.6

Link-layer_parameters,_per_interface:_

Trailers on/off HRC 2.3.1
ARP cache timeout integer HRC 2.3.2.1
Ethernet encapsulation (RFC 894/RFC 1042) HRC 2.3.3

TCP_parameters,_per_host:_

TTL integer HRC 4.2.2.19
Keep-alive interval integer HRC 4.2.3.6
Keep-alive data size 0/1 HRC 4.2.3.6

Key:

MTU = Path MTU Discovery (RFC 1191, Proposed Standard)
RD = Router Discovery (RFC 1256, Proposed Standard)