2008/05/07

DHCP(Dynamic Host Configuration Protocol)

DHCP Dynamic Host Configuration Protocol

การกำหนดแอดเดรสสำหรับ Internet Protocol หรือ IP Address ให้กับเครื่องคอมพิวเตอร์ และอุปกรณ์ต่าง ๆ ภายในเครือข่าย
TCP/IP เป็นสิ่งที่ผู้บริหารเครือข่ายต้องวางแผน และจัดการอย่างเป็นระบบ เพื่อไม่ให้เกิดการใช้งานแอดเดรสที่ซ้ำกัน หรือการกำหนดแอดเดรสผิด ทำให้ไม่สามารถสื่อสารถึงกันได้ในกรณีที่เครือข่ายมีขนาดเล็ก การเพิ่มเติม หรือแก้ไขสามารถที่จะกระทำได้เองโดยง่าย แต่หากเครือข่ายมีขนาดใหญ่มาก ๆ แล้วจะกลายเป็นงานที่ลำบาก และเสียเวลามากเลยทีเดียว

ด้วยเหตุนี้จึงได้มีผู้คิดค้นโปรโตคอล DHCP (Dynamic Host Configuration Protocol) สำหรับกำหนดแอดเดรสแบบ dynamic ขึ้นมาใช้งาน โดยจะทำหน้าที่แจกจ่ายแอดเดรส และพารามิเตอร์ที่จำเป็นให้กับคอมพิวเตอร์ และอุปกรณ์ภายในเครือข่ายโดยอัตโนมัติ
การทำงานของโปรโตคอล DHCP ได้รับการปรับปรุงมาจากโปรโตคอล Bootstrap กล่าวคือได้เพิ่มเติมความสามารถในการนำแอดเดรสที่กำหนดให้เครื่องคอมพิวเตอร์ หรืออุปกรณ์นำไปใช้งานกลับมาแล้วแจกจ่ายออกไปใหม่ได้นั่นเอง

หลังจากที่มีโปรโตคอล DHCP ผู้ดูแลระบบสามารถวางแผน และกำหนดค่าแอดเดรส รวมทั้งพารามิเตอร์ต่าง ๆ ที่จำเป็นต้องใช้จากศูนย์กลางเพียงจุดเดียว หากต้องการเปลี่ยนแปลงแก้ไขสามารถทำได้ง่าย และรวดเร็วขึ้น
การทำงานของ DHCP
- จัดอยู่ในสถาปัตยกรรมแบบไคลเอนต์เซิร์ฟเวอร์
- โดยเครื่องที่ทำหน้าที่เก็บฐานข้อมูลของแอดเดรส และพารามิเตอร์ (DHCP database) ที่จำเป็น
- เพื่อแจกจ่ายให้กับเครื่องคอมพิวเตอร์ หรืออุปกรณ์อื่น ๆ
- เรียกว่า DHCP server
- เครื่องที่ร้องขอแอดเดรส และพารามิเตอร์อื่น ๆ จาก DHCP server เพื่อนำไปใช้งาน จะถูกเรียกว่า DHCP client
- เมื่อ DHCP client เริ่มทำงาน
- จะส่งข้อความ เพื่อร้องขอแอดเดรส
- ออกไปยัง DHCP server
- เมื่อ DHCP server ได้รับข้อความร้องขอแล้ว
- จะทำการเลือกแอดเดรสที่ยังไม่ถูกจ่ายออกไปจากฐานข้อมูล
- และส่งข้อความ เพื่อเสนอแอดเดรสดังกล่าวให้กับ DHCP Client
- หาก DHCP client ต้องการรับข้อเสนอนี้
- ก็จะส่งข้อความ ตอบรับกลับไปยัง DHCP server
- จากนั้น DHCP server จะตอบกลับไปยัง DHCP client อีกครั้ง
- เพื่อยืนยันว่าได้รับข้อความตอบรับข้างต้นเรียบร้อยแล้ว
- พร้อมกับส่งค่าพารามิเตอร์อื่น ๆ ที่ DHCL client จำเป็นต้องใช้
- และกำหนดช่วงเวลาที่อนุญาตให้ใช้แอดเดรสนี้
- ซึ่งต่อไปขอเรียกว่า Lease duration ส่งไปพร้อมกันในคราวเดียว
ขั้นตอนการสร้างกำหนดแอดเดรสให้กับ DHCP client
- เมื่อ DHCP client เริ่มทำงาน
- ซอฟท์แวร์ของ TCP/IP จะถูกโหลดเข้าสู่หน่วยความจำ
- และพร้อมใช้งาน
ขั้นตอนการสร้างกำหนดแอดเดรสให้กับ DHCP client
- แต่เนื่องจากยังไม่ได้ทำการกำหนดแอดเดรส และพารามิเตอร์ต่าง ๆ
- DHCP client จึงยังไม่สามารถที่จะรับส่งข้อมูลได้โดยตรง
- แต่จะเป็นการรับส่งผ่านการ broadcast คือ ส่งกระจายไปยังทุก ๆ node เสมอ
- โดยปกติ หาก DHCP client ต้องการส่งข้อมูลไปยัง DHCP server
- จะระบุแอดเดรสปลายทางเป็น 255.255.255.255 (broadcast address)
- และกำหนดพอร์ตปลายทางเป็น 68
- โดยใช้ UDP เป็น Transport Protocol (DHCP server จะคอยตรวจจับการร้องขอจาก DHCP client ที่พอร์ตนี้)
- และทำนองเดียวกัน DHCP server เมื่อต้องการตอบรับกลับไปยัง DHCP client ก็จะส่งข้อมูลในลักษณะ broadcast ออกไปเช่นกันแต่ระบุพอร์ตปลายทางเป็น 67 แทน
(DHCP client ทุกตัวจะคอยตรวจจับการตอบรับจาก DHCP server ที่พอร์ต 67 ของตน)
ขั้นตอนการกำหนดแอดเดรสให้กับ DHCP client
ขั้นที่ 1 – IP Lease Request
- DHCP client จะทำการ broadcast ข้อความ DHCPDISCOVER
- พร้อมกับระบุค่า MAC Address ของเน็ตเวิร์คการ์ดบน DHCP client ไปกับข้อความดังกล่าวด้วย
- เพื่อใช้อ้างอิง
- เนื่องจาก DHCP client ยังไม่ได้กำหนดค่า IP Address
- โดยใส่ลงใน physical subnet
- หาก DHCP server อยู่คนละ physical subnet แล้ว จำเป็นต้องติดตั้ง DHCP/BOOTP Replay Agent ลงใน physical subnet ที่ไม่มี DHCP server ติดตั้งอยู่ เพื่อนำข้อความ DHCPDISCOVER ส่งต่อให้กับ DHCP server ใน physical subnet อื่น)
ขั้นที่ 2 – IP Lease Offer
- เมื่อทุก ๆ DHCP server ได้รับข้อความจาก DHCPDISCOVER จาก DHCP client
- ก็จะทำการส่งข้อความ DHCPOFFER
- โดยวิธีส่งตรง หรือ unicast ไปยัง DHCP client ที่ทำการร้องขอ ถ้าสามารถกระทำได้
- แต่หากไม่สามารถ unicast ไปยัง DHCP client ที่ทำการร้องข้อได้โดยตรง ก็จะทำการ broadcast ผ่าน broadcast address
- สำหรับข้อความ DHCPOFFER ประกอบด้วย
* IP Address ที่สามารถให้ได้
* Subnet Mask
* MAC Address ของ DHCP client
- สำหรับข้อความ DHCPOFFER ประกอบด้วย
* ช่วงเวลาที่อนุญาตให้ใช้งานแอดเดรส หรือ Lease นั่นเอง
* IP Address ของ DHCP server เพื่อใช้อ้างอิง
ขั้นที่ 3 – IP Lease Selection
- เมื่อ DHCP client ได้รับข้อความ DHCPOFFER จาก DHCP server ซึ่งอาจมีเพียงตัวเดียว หรือหลายตัวก็ได้
ขั้นตอนการกำหนดแอดเดรสให้กับ DHCP client
ขั้นที่ 3 – IP Lease Selection
(โดยหลักการแล้ว DHCP client ส่วนใหญ่มักถูกกำหนดให้ยอมรับข้อความ DHCPOFFER จาก DHCP server ที่ส่งมาถึงเร็วที่สุด คือ เลือกใช้จากตัวที่ตอบกลับมาถึงก่อนนั่นเอง)
- จากนั้นจึงทำการเลือกที่จะตอบรับข้อเสนอของ DHCP server เครื่องใดเครื่องหนึ่ง
- และทำการ broadcast ข้อความ DHCPREQUEST ออกไป
- โดยระบุ IP Address ของ DHCP server ที่ได้รับเลือกลงไปด้วย
- เพื่อเป็นการบอกว่าได้เลือก DHCP server ตัวใด
ขั้นที่ 4 – IP Lease Acknowledgement
- เมื่อ DHCP server ได้รับข้อความ DHCPREQUEST
- และตรวจสอบแล้วว่าเป็นข้อความที่เป็นของตนก็จะทำการ broadcast ข้อความ DHCPACK ออกไป
- ซึ่งประกอบด้วยค่า
* IP Address
* Subnet Mask
* MAC Address ของ DHCP client
- ซึ่งประกอบด้วยค่า
* ช่วงเวลาที่อนุญาตให้ใช้งาน IP Address
* และค่าพารามิเตอร์อื่น ๆ ที่จำเป็นต้องกำหนดให้กับ DHCP client
- เมื่อ DHCP client ได้รับข้อความ DHCPACK ก็จะนำค่าต่าง ๆ ไปกำหนด แล้วเริ่มใช้งานโปรโตคอล TCP/IP ต่อไป
Relay Agent
ปกติการใช้งาน broadcast address นั้น โปรโตคอล TCP/IP ได้กำหนดไว้ให้ใช้เฉพาะภายใน physical subnet เดียวกันเท่านั้น เนื่องมาจาก Router ไม่สามารถที่จะทำการ Forward ข้อมูลดังกล่าวได้นั่นเอง
ทำให้กระบวนการทำงานของโปรโตคอล DHCP ที่ต้องอาศัยการ broadcast ถูกจำกัดลงให้อยู่ภายใต้ physical subnet เดียวกันเท่านั้น การที่จะเอาชนะข้อจำกัดดังกล่าวจำเป็นต้องใช้ตัวกลาง
โดยตัวกลางจะต้องอยู่ภายใต้ physical subnet เดียวกันกับ DHCP client เพื่อรับข้อความที่เป็น broadcast ออกมาจาก DHCP client ผ่านพอร์ต 68 (แทนที่ผู้รับจะเป็น DHCP server ตัวกลางจะทำหน้าที่รับข้อความต่าง ๆ แทน)
เมื่อรับข้อความมาแล้วก็จะทำการส่งต่อไปยัง DHCP server ซึ่งตัวกลางจำเป็นต้องทราบค่า IP Address ของ DHCP server เพื่อกำหนดเป็นแอดเดรสปลายทางลงใน Datagram ได้ เพียงเท่านี้ก็สามารถส่งข้อความดังกล่าวไปยัง physical subnet ที่มี DHCP server อยู่ได้แล้ว
(Router สามารถทำงานได้ถูกต้อง เมื่อทราบ IP ที่แท้จริงของ DHCP server)
โดยส่วนใหญ่แล้ว Router มักจะมีคุณสมบัติดังที่กล่าวมาทั้งหมดนี้ติดตั้งมาด้วย เพื่อทำหน้าที่เป็นตัวกลางระหว่าง DHCP server และ DHCP client ที่อยู่คนละ physical subnet นั่นเอง
แต่หาก Router ใดไม่มีคุณสมบัติดังกล่าว จำเป็นที่จะต้องติดตั้งซอฟท์แวร์ลงในเครื่องคอมพิวเตอร์ที่อยู่ physical subnet เดียวกันกับ DHCP client เพื่อให้เครื่องคอมพิวเตอร์นั้น ๆ ทำหน้าที่เป็นตัวกลาง ซึ่งเราจะเรียกซอฟท์แวร์ดังกล่าวว่า DHCP/BOOTP Relay Agent

6 comments:

Anonymous said...

Heyy there, You have done an excellent job. I'll certainly digg
it and personally recommend to my friends. I'm sure they'll be
benefited from this web site.

Also visit my blog ... clash of lords 2 hack - tinyurl.com
-

Anonymous said...

Great post. I used to be checking continuously this blog and I'm impressed!
Extremely useful information particularly the remaining section :
) I maintain such information much. I was seeking
this particular information for a long time. Thanks and good luck.



Review my homepage har vokse

Anonymous said...

But there are some words that could be said in defense of this sport.

ufc 174 live While using scheme group so that you can hype forthcoming pay-per-view credit rating game is really 1 location that'll be uninterrupted moving forward.
Choose from entertainment, big time show channels, and a wide selection of sports.

Anonymous said...

Game titles may become excruciating occasionally, leading to far more
powerful than their parents as well as Netflix as well as adults.

Now the sims freeplay cheats you can finish it you could then consider buying your used video game title subsides, what do designers do?
So why are online such as smart phones, large electronic device which is
a very important that when some thing a whole. Instead of choosing
the right hands, and they exist to the sims freeplay cheats destroy his enemy.

yanmaneee said...

curry 5 shoes
jordan 11
lebron 16
cheap jordans
nike cortez
yeezy boost 350
jordan shoes
adidas zx flux
fila
ralph lauren uk

mctiso said...

look what i found go to this web-site click site go to this website More Bonuses have a peek at this website