DHCPサービスのご紹介
DHCP(動的ホスト構成プロトコル、動的ホスト構成プロトコル)は、一般的に大ローカルエリアネットワーク環境で使用され、主な役割は、動的なネットワーク環境へのホストは、IPアドレス、ゲートウェイアドレス、DNSを取得するために、管理を一元化IPアドレスを割り当てることですサーバアドレスやその他の情報、およびアドレスの利用率を高めることができること。
DHCPは、クライアント/サーバモデル、動的ネットワークホストによって駆動タスクを割り当てられたホストアドレスを採用しています。DHCPサーバがネットワークホストアドレスからアプリケーション情報を受信した場合、アドレスは、ネットワークホストアドレス情報の動的割り当てを達成するために、ネットワークホストに関連する構成情報を送信します。
DHCPは、ホストがDHCPサーバのポート68に要求メッセージを送信し、トランスポートプロトコルとしてUDPを使用して、ポート67は、ホストにDHCPサーバに応答メッセージを応答します。
DHCPサービスが動作します:
1は、DHCPクライアントがDHCP発見パケットをブロードキャストすることによって送信されます。
2、一部のDHCPサーバは、DHCPクライアントにDHCPオファーパケットを送信し、応答が得られます。
図3は、DHCPクライアントのIPアドレスが必要な選択されたDHCPサーバーとIPアドレスに追加されるオプションフィールドにブロードキャストDHCP要求パケットを発行します。
4、DHCPサーバーがIPアドレスオプションフィールドかどうかを判断するために、DHCP要求メッセージを受信した後に、そのアドレスが同じです。同じ場合は、DHCPサーバDHCPクライアントがDHCP ACKパケットに応答します。
5の後、DHCPクライアントがIPアドレスを使用するように割り当てることができるかどうかDHCP ACKメッセージ、DHCPサーバーのチェックを受けます。
6、DHCPクライアントが成功した後、IPアドレスを取得し、あなたは常にDHCP Releaseメッセージを送信することにより、自分のIPアドレスを解放することができます。
DHCPサーバの設定
DHCPサーバ:10.0.0.240
DHCPクライアント:10.0.0.8
1、DHCPソフトウェアパッケージをインストールします
yumを-yのDHCP DHCP-develのインストール |
2、DHCP設定ファイル
サブネット10.0.0.0ネットマスク255.255.255.0 {#サブネットとサブネットマスク 範囲10.0.0.3 10.0.0.254;#は、自動的にIPアドレスの範囲を得ることができます オプションのドメイン・ネーム・サーバ61.139.2.69; #dnsサーバー名 オプションルータ10.0.0.2;#ゲートウェイアドレス オプションブロードキャストアドレス10.0.0.255;#ブロードキャストアドレス オプションNTP-サーバ10.0.0.240;#は、タイムサーバのアドレスを設定します デフォルト・リース・タイム600;秒#デフォルトのリース期間 MAX-リース時間7200;#最大リース期間を秒単位で } |
3、DHCPを開始
dhcpdを起動systemctl [ルート@のyumなど]#netstatの-lntup | grepを67 UDP 0 0 0.0.0.0:67 0.0.0.0:* 25197 / dhcpdの |
次のように4、クライアントのeth0 NICモード10.0.0.8変更DHCPは、温家宝嘉が設定さ:
TYPE =イーサネット PROXY_METHOD =なし BROWSER_ONLY =なし BOOTPROTO = DHCP DEFROUTE =はい IPV4_FAILURE_FATAL =はい NAME = eth0の DEVICE = eth0の ONBOOT = yesの |
5、DHCP DHCPサーバの監視
tcpdumpの-nn -i eth0のポート67 |
6、クライアントを再起動します
systemctl再起動ネットワーク |
図7は、クライアントがIPを取得するかどうかを確認します
[ルート@ mysqlの〜]#ifconfigコマンド eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 10.0.0.5 netmask 255.255.255.0 broadcast 10.0.0.255 inet6 fe80::20c:29ff:fe4f:670f prefixlen 64 scopeid 0x20<link> ether 00:0c:29:4f:67:0f txqueuelen 1000 (Ethernet) RX packets 575652 bytes 370650678 (353.4 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 376213 bytes 142439337 (135.8 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 |
8、在dhcp服务端查看抓取的信息
[root@yum etc]# tcpdump -nn -i eth0 port 67 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes 12:05:11.165917 IP 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request from 00:0c:29:4f:67:0f, length 300 12:05:11.168283 IP 10.0.0.240.67 > 10.0.0.5.68: BOOTP/DHCP, Reply, length 300 |
9、配置客户端获取固定IP 10.0.0.8,DHCP服务器的配置文件如下
subnet 10.0.0.0 netmask 255.255.255.0 { #网段和子网掩码 range 10.0.0.3 10.0.0.254; #可自动获取的IP地址范围 option domain-name-servers 61.139.2.69; #dns服务器名称 option routers 10.0.0.2; #网关地址 option broadcast-address 10.0.0.255; #广播地址 option ntp-servers 10.0.0.240; #设定时间服务器地址 default-lease-time 600; #默认租约期限,单位秒 max-lease-time 7200; #最长租约期限,单位秒 } #配置固定IP host mysql { #客户端的主机名 hardware ethernet 00:0c:29:4f:67:0f; #客户端的网卡MAC fixed-address 10.0.0.8; #配置的固定IP } |
10、重启dhcp
systemctl restart dhcpd |
11、重启客户端网卡服务
systemctl restart network |
12、查看客户端IP信息
[root@mysql ~]# ifconfig eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 10.0.0.8 netmask 255.255.255.0 broadcast 10.0.0.255 inet6 fe80::20c:29ff:fe4f:670f prefixlen 64 scopeid 0x20<link> ether 00:0c:29:4f:67:0f txqueuelen 1000 (Ethernet) RX packets 12496 bytes 17114035 (16.3 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 5465 bytes 371841 (363.1 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 |
13、dhcp服务端的抓包信息
[root@yum etc]# tcpdump -nn -i eth0 port 67 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes 12:52:32.169685 IP 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request from 00:0c:29:4f:67:0f, length 300 12:52:32.169893 IP 10.0.0.240.67 > 10.0.0.8.68: BOOTP/DHCP, Reply, length 300 |