<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Kunawut's knowledge blog</title>
	<atom:link href="http://www.kunawut.com/blog/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://www.kunawut.com/blog</link>
	<description>ความรู้โดยนายคุณาวุฒิ</description>
	<lastBuildDate>Mon, 30 Aug 2010 23:52:20 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>การปรับแต่ง Coova-Chilli</title>
		<link>http://www.kunawut.com/blog/?p=555</link>
		<comments>http://www.kunawut.com/blog/?p=555#comments</comments>
		<pubDate>Mon, 30 Aug 2010 23:52:20 +0000</pubDate>
		<dc:creator>คุณาวุฒิ</dc:creator>
				<category><![CDATA[dd-hotspot]]></category>

		<guid isPermaLink="false">http://www.kunawut.com/blog/?p=555</guid>
		<description><![CDATA[การกำหนดช่วงการจ่าย IP ของ Coova
dhcpstart 100
dhcpend 200
คำสั่งเพื่อไม่ให้ coova จ่าย IP
nodynip
]]></description>
			<content:encoded><![CDATA[<p>การกำหนดช่วงการจ่าย IP ของ Coova</p>
<p>dhcpstart 100<br />
dhcpend 200</p>
<p>คำสั่งเพื่อไม่ให้ coova จ่าย IP</p>
<p>nodynip</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kunawut.com/blog/?feed=rss2&amp;p=555</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ติดตั้ง Install Coova-Chilli+freeradius บน Ubuntu 9.04</title>
		<link>http://www.kunawut.com/blog/?p=553</link>
		<comments>http://www.kunawut.com/blog/?p=553#comments</comments>
		<pubDate>Mon, 30 Aug 2010 23:47:58 +0000</pubDate>
		<dc:creator>คุณาวุฒิ</dc:creator>
				<category><![CDATA[dd-hotspot]]></category>

		<guid isPermaLink="false">http://www.kunawut.com/blog/?p=553</guid>
		<description><![CDATA[อ่านได้จากที่นี่ครับ
http://www.oknation.net/blog/print.php?id=489871
]]></description>
			<content:encoded><![CDATA[<p>อ่านได้จากที่นี่ครับ</p>
<p><a href="http://www.oknation.net/blog/print.php?id=489871">http://www.oknation.net/blog/print.php?id=489871</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.kunawut.com/blog/?feed=rss2&amp;p=553</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>เปิดโลกเครือข่าย Cisco ตอนรู้จัก VLANและติดตั้ง VLAN บน Switches</title>
		<link>http://www.kunawut.com/blog/?p=548</link>
		<comments>http://www.kunawut.com/blog/?p=548#comments</comments>
		<pubDate>Fri, 16 Jul 2010 03:35:45 +0000</pubDate>
		<dc:creator>คุณาวุฒิ</dc:creator>
				<category><![CDATA[Network Management]]></category>

		<guid isPermaLink="false">http://www.kunawut.com/blog/?p=548</guid>
		<description><![CDATA[



เปิดโลกเครือข่าย Cisco ตอนรู้จัก VLANและติดตั้ง VLAN บน Switches




ดร.วิรินทร์ เมฆประดิษฐสิน








VLAN คืออะไร ?  
ข้อดีของการใช้งาน VLAN 
ความแตกต่างระหว่าง Switched LAN กับ VLAN
ชนิดของ VLAN
Port-Based VLAN
Mac Address-Based VLAN
IP หรือ Subnet-Based VLAN
Protocol-Based VLAN
Application-Based VLAN
การเชื่อมต่อ VLAN เข้าด้วยกัน
ชนิดของ VLAN ในความหมายของ Cisco
รู้จักกับ Tagged VLAN
VLAN Trunking Protocol(VTP)
สรุปจุดประสงค์หลักของ VTP
VTP ADVERTISEMENT
VTP ทำงานได้อย่างไร
VTP SWITCH MODE
 VTP Pruning
 แนวทางการจัด VLAN CONFIGURATION
 ขั้นตอนการจัด Configuration Mode
 แนวทางการจัด VTP Configuration







 







VLAN คืออะไร ? 








VLAN (Virtual Area Network) เป็นการจัดแยกการเชื่อมต่อเครือข่ายในรูปแบบที่เรียกว่า โดเมนส์ ซึ่งจุดประสงค์ของการแยกออกเป็นโดเมนส์นี้ [...]]]></description>
			<content:encoded><![CDATA[<table border="0" cellspacing="0" cellpadding="0" width="570">
<tbody>
<tr>
<td width="570" bgcolor="#006699">
<p align="left"><strong>เปิดโลกเครือข่าย Cisco ตอนรู้จัก VLANและติดตั้ง VLAN บน Switches</strong></p>
</td>
</tr>
<tr>
<td width="570" bgcolor="#e9e9e9">
<p dir="ltr" align="left">ดร.วิรินทร์ เมฆประดิษฐสิน</p>
</td>
</tr>
</tbody>
</table>
<table style="height: 0px;" border="0" width="570">
<tbody>
<tr>
<td width="570" bgcolor="#ffffcc">
<p dir="ltr" align="left"><strong>VLAN คืออะไร ?  </strong></p>
<p dir="ltr" align="left"><strong>ข้อดีของการใช้งาน VLAN </strong></p>
<p dir="ltr" align="left">ความแตกต่างระหว่าง Switched LAN กับ VLAN</p>
<p dir="ltr" align="left">ชนิดของ VLAN</p>
<p dir="ltr" align="left">Port-Based VLAN</p>
<p dir="ltr" align="left">Mac Address-Based VLAN</p>
<p dir="ltr" align="left">IP หรือ Subnet-Based VLAN</p>
<p dir="ltr" align="left">Protocol-Based VLAN</p>
<p dir="ltr" align="left">Application-Based VLAN</p>
<p dir="ltr" align="left">การเชื่อมต่อ VLAN เข้าด้วยกัน</p>
<p dir="ltr" align="left">ชนิดของ VLAN ในความหมายของ Cisco</p>
<p dir="ltr" align="left">รู้จักกับ Tagged VLAN</p>
<p dir="ltr" align="left">VLAN Trunking Protocol(VTP)</p>
<p dir="ltr" align="left">สรุปจุดประสงค์หลักของ VTP</p>
<p dir="ltr" align="left">VTP ADVERTISEMENT</p>
<p dir="ltr" align="left">VTP ทำงานได้อย่างไร</p>
<p dir="ltr" align="left">VTP SWITCH MODE</p>
<p dir="ltr" align="left"> VTP Pruning</p>
<p dir="ltr" align="left"> แนวทางการจัด VLAN CONFIGURATION</p>
<p dir="ltr" align="left"> ขั้นตอนการจัด Configuration Mode</p>
<p dir="ltr" align="left"> แนวทางการจัด VTP Configuration</p>
</td>
</tr>
</tbody>
</table>
<table style="height: 0px;" border="0" cellspacing="0" cellpadding="0" width="570">
<tbody>
<tr>
<td width="570" height="0" valign="top"> </td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td bgcolor="#ffffcc">
<p align="left"><strong>VLAN คืออะไร ?</strong><strong> </strong></p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td width="570">
<p align="left">VLAN (Virtual Area Network) เป็นการจัดแยกการเชื่อมต่อเครือข่ายในรูปแบบที่เรียกว่า โดเมนส์ ซึ่งจุดประสงค์ของการแยกออกเป็นโดเมนส์นี้ ก็เพื่อให้เครื่องคอมพิวเตอร์ที่อยู่ต่างโดเมนส์ไม่สามารถสื่อสารกันได้ ทั้งนี้เพื่อความปลอดภัยของเครือข่าย รวมทั้งสามารถเพิ่มประสิทธิภาพการทำงานของเครือข่ายอีกด้วย</p>
<p align="left">ในหนึ่งเครือข่ายอาจประกอบด้วย Switching Hub หลาย ๆ ตัว และใน Switching Hub หนึ่งตัวอาจประกอบด้วย VLAN หลาย ๆ โดเมนส์ หรือหลาย VLAN ก็เป็นได้ การแบ่ง VLAN จะทำให้เครื่องคอมพิวเตอร์แม้จะเชื่อมต่อกันใน Switches Hub เดียวกัน แต่อยู่ต่าง VLAN กัน ไม่สามารถสื่อสารกันได้ รวมทั้งไม่สามารถมองเห็นกันได้ด้วยซ้ำไป (รูปที่ 1)</p>
<p align="left">และที่แน่นอน หนึ่ง VLAN สามารถกระจายไปตาม Switches Hub ต่าง ๆ ได้ เช่นกัน ภายใต้ Switches Hub ของ Cisco 1 ตัว สามารถติดตั้ง VLAN ได้มากถึง 64 VLAN และทั้งระบบสามารถมี VLAN ได้มากถึง 1024 VLAN</p>
<p>                   </p>
<p><strong>รูปที่ 1</strong> แสดงการแบ่ง VLAN ออกเป็น 2 ชุด ภายใน Switches เดียว</p>
<p align="right"> </p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td bgcolor="#ffffcc">
<p align="left"><strong>ข้อดีของการใช้งาน VLAN</strong></p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td width="570">
<ul>
<li>
<p align="left">สามารถป้องกันปัญหา Broadcast มิให้ฟุ้งกระจายไปทั่วทั้งเครือข่าย</p>
</li>
<li>
<p align="left">สามารถจำกัด Traffic ให้อยู่ ในบริเวณที่สามารถควบคุมได้</p>
</li>
<li>
<p align="left">เพื่อการรักษาความปลอดภัยที่ดี เนื่องจากการแบ่ง VLAN จำให้ผู้ที่อยู่ต่าง VLAN กันจะไม่สามารถมองเห็นกันได้ เมื่อมองเห็นกันไม่ได้ ก็ไม่สามารถโจมตีกันได้</p>
</li>
<li>
<p align="left">สามารถกำหนดขอบเขตการแพร่กระจายข้อมูลเฉพาะกลุ่มได้ (Multicast)</p>
</li>
<li>
<p align="left">สามารถเพิ่มประสิทธิภาพการทำงานของเครือข่าย เนื่องจากสามารถลดปัญหาของ Broadcast จากสาเหตุต่างๆ ลงได้</p>
</li>
</ul>
<p>                 </p>
<p><strong>รูปที่ 2</strong> แสดงลักษณะการแบ่ง VLAN ออกเป็น 2 ส่วนได้แก่ VLAN แผนกบัญชีและ VLAN แผนกบริหารจัดการ</p>
<p><span id="more-548"></span></p>
<p align="right"> </p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td bgcolor="#ffffcc">
<p align="left"><strong>ความแตกต่างระหว่าง Switched LAN กับ VLAN</strong></p>
</td>
</tr>
<tr>
<td width="570">
<ul>
<li dir="ltr">
<p dir="ltr" align="left">VLAN ทำงานบน Layer 2 และ 3 ของ OSI Model</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">การเชื่อมต่อกันระหว่าง VLAN สามารถทำได้โดยการใช้เราเตอร์</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">VLAN สามารถควบคุมการเกิด Broadcast บนเครือข่าย ขณะที่ Switches Hub แบบ Layer 2 ไม่สามารถทำได้</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">ผู้ดูแลเครือข่ายเท่านั้น ที่จะเป็นผู้กำหนด การทำงานของ VLAN</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">VLAN สามารถป้องกันความปลอดภัยของข้อมูลได้ดีกว่าสวิตซ์ทั่วไป</p>
</li>
</ul>
<p align="right"> </p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td bgcolor="#ffffcc">
<p align="left"><strong>ชนิดของ VLAN </strong></p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td width="570">
<p dir="ltr">VLAN มีอยู่หลายแบบ ทั้งนี้ขึ้นอยู่กับประเภทของสวิตซ์ ลักษณะของงาน และการจัดคอนฟิกของเครือข่าย โดยสามารถแบ่งออกเป็นแบบต่าง ๆ ดังนี้</p>
<p> </td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td bgcolor="#ffffcc">
<p align="left"><strong>Port-Based VLAN</strong></p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td width="570">
<p dir="ltr" align="left">Port-Based VLAN เป็น การจัดแบ่ง VLAN โดยอาศัยพอร์ตและหมายเลขพอร์ตเป็นหลัก โดยเพียงแต่กำหนดว่า ในหนึ่ง Switches Hub มีกี่ VLAN มีชื่ออะไรบ้าง และต้องการให้พอร์ตใด หมายเลขใด เป็นสมาชิกของ VLAN ใดบ้าง</p>
<p>                    </p>
<p><strong>รูปที่ 3</strong> แสดงลักษณะการแบ่ง VLAN โดยอาศัยหมายเลขพอร์ตเป็นหลัก</p>
<p dir="ltr" align="left">จากพอร์ตที่ 3 แสดงให้เห็นว่า VLAN 1 ประกอบด้วย เครื่องคอมพิวเตอร์รวมทั้งเครื่องเซิร์ฟเวอร์ที่เชื่อมต่อกับพอร์ตหมายเลข 1-4 และ VLAN 2 ประกอบด้วย คอมพิวเตอร์ ที่เชื่อมต่อกับพอร์ตหมายเลข 9-12 ส่วน VLAN 3 ประกอบด้วยคอมพิวเตอร์ที่เชื่อมต่อกับพอร์ตหมายเลข 5-8 เป็นต้น ขั้นตอนในการจัดตั้ง Port-Based VLAN สามารถกระทำได้โดยง่าย โดยมีขั้นตอนคร่าว ๆ ดังนี้</p>
<ul>
<li dir="ltr">
<p dir="ltr" align="left">กำหนด VTP Domain ให้เรียบร้อย (สำหรับสวิตซ์ของ Cisco)</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">กำหนดชื่อของ VLAN รวมทั้งเลขหมายของ VLAN</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">กำหนดหมายเลขพอร์ตให้กับ VLAN แต่ละชุดที่ถูกสร้างขึ้น</p>
</li>
</ul>
<p dir="ltr" align="left">ข้อเสียของ Port-Based VLAN ได้แก่การที่ สามารถเปลี่ยนแปลงได้ง่าย เนื่องจากผู้ใช้งานสามารถเปลี่ยนแปลงคอนฟิกของ VLAN ได้ ก็เพียงแต่ย้ายสายแลนจากหมายเลขพอร์ตหนึ่งไปยังพอร์ตอื่น ๆ ได้ง่าย ดังนั้นการโยกย้าย VLAN ก็เพียงแต่ย้ายสายแลนเท่านั้น</p>
<p dir="ltr" align="right"> </p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td bgcolor="#ffffcc">
<p align="left"><strong>MAC Address-Based VLAN </strong></p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td width="570">
<p dir="ltr">MAC Address-Based VLAN เป็นการจัดตั้ง VLAN ที่อาศัย MAC Address เป็นหลัก ซึ่งแอดเดรสนี้เป็น แอดเดรสที่มาจากการ์ดแลนของเครื่องคอมพิวเตอร์แต่ละเครื่อง การแบ่ง VLAN ด้วยการอาศัย MAC Address นี้ง่ายต่อการจัดคอนฟิกมาก เนื่องจากท่านไม่ต้องกำหนดเลขหมายของพอร์ต ไม่ต้องสนใจว่า เครื่องคอมพิวเตอร์ของท่านติดตั้งอยู่บนพอร์ตหมายเลขใด และไม่ต้องกลัวว่า จะมีใครย้ายเพื่อเปลี่ยน VLAN เนื่องจาก ไม่ว่าท่านจะย้ายไปอยู่ที่ใด บนสวิตซ์ตัวใด ตราบใดที่กำหนด MAC Address ประจำ VLAN แล้ว ท่านจะเปลี่ยนแปลง VLAN เองได้ก็ต่อเมื่อเปลี่ยนการ์ดแลนเท่านั้น !! (รูปที่ 4)</p>
<p>                     </p>
<p><strong>รูปที่ 4</strong> แสดงลักษณะการเชื่อมต่อ VLAN แบบ MAC Address-Based</p>
<p dir="ltr"><strong>ข้อจำกัดของ MAC-Based VLAN</strong></p>
<ul>
<li dir="ltr">
<p dir="ltr">พอร์ตที่จะเข้าร่วมใช้งานเป็น MAC-Based VLAN นั้นจะต้องไม่เป็น Static VLAN หมายความว่า จะต้องไม่มีการกำหนดหมายเลขพอร์ตที่ตายตัวให้กับ VLAN ต่าง ๆ</p>
</li>
<li dir="ltr">
<p dir="ltr">MAC Based VLAN ถูกออกแบบมาให้สามารถสนับสนุน 1 ไคลเอนต์ต่อหนึ่งพอร์ต (ทางกายภาพสวิตซ์บางรุ่น ) ขณะที่บางสวิตซ์สามารถสนับสนุนได้หลายยูสเซอร์ต่อ 1 พอร์ต</p>
</li>
</ul>
<p> </td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td bgcolor="#ffffcc">
<p align="left"><strong>IP หรือ Subnet-Based VLAN </strong></p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td width="570">
<p dir="ltr" align="left">IP หรือ Subnet-Based VLAN บางครั้งถูกเรียกว่า Layer-3 Based VLAN เป็น VLAN ที่ถูกสร้างขึ้นโดยอาศัยข้อมูลข่าวสารในระดับ Network Layer โดยสวิตซ์จะตรวจสอบข้อมูลไอพีที่ Header ของแพ้กเกจ ปกติ IP หรือ Subnet-based VLAN จะถูกติดตั้งบนสวิตซ์แบบ Layer 3 เท่านั้น ขณะที่ชนิดของ VLAN ที่ได้กล่าวมาก่อนหน้านี้ทำงานบน Layer-2 Switches</p>
<p dir="ltr" align="left">รูปที่ 5 แสดงการใช้ Layer 3 Switches เพื่อสร้าง VLAN จำนวน 3 ชุดขึ้น จะเห็นว่ามีการแบ่ง VLAN ออกเป็นส่วน ๆ โดยใช้ เลขหมายไอพีที่อยู่ต่างเครือข่ายกัน มากำหนด VLAN ที่ต่างกันขึ้น ข้อดีของการจัด VLAN แบบนี้ มีอยู่ 3 แบบ ได้แก่</p>
<ul>
<li dir="ltr">
<p dir="ltr" align="left">ความยืดหยุ่น เนื่องจากท่านสามารถเปลี่ยนแปลง VLAN โดยการเปลี่ยน IP เท่านั้น ผู้ใช้งานสามารถโยกย้ายเครื่องออกจากพอร์ต ได้โดยไม่ต้องจัดคอนฟิกแอดเดรสของเครือข่ายกันใหม่ให้กับคอมพิวเตอร์แต่ละเครื่อง เหมาะสำหรับเครือข่ายที่ใช้โปรโตคอล TCP/IP เป็นหลัก</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">ให้การสนับสนุนเราติ้ง โดยสนับสนุนการเชื่อมต่อระหว่าง VLAN ที่ต่างกันได้</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">การจัด คอนฟิกของ VLAN แบบนี้ สามารถเกิดขึ้นได้โดยอัตโนมัติ ดังนั้นค่าใช้จ่ายในการที่จะดูแลการทำงานของ VLAN ประเภทนี้ จะถูกกว่า MAC Address-Based มาก</p>
</li>
</ul>
<p>                     </p>
<p><strong>รูปที่ 5</strong> แสดงการจัดตั้ง VLAN แบบ IP Subnet-Based</p>
<p dir="ltr" align="left"><strong>ข้อเสียของ IP หรือ Subnet-Based VLAN</strong></p>
<p dir="ltr" align="left">ข้อเสียมีเพียงประการเดียว ได้แก่ การจัดตั้ง IP Address ที่อาจเกิดความสับสน รวมทั้งปัญหาของสวิตซ์บางรุ่นที่อาจสนับสนุนหลายไอพีแอดเดรสบนพอร์ตเดียวกัน</p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td bgcolor="#ffffcc">
<p align="left"><strong>Protocol-Based VLAN </strong></p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td width="570">
<p dir="ltr">รูปแบบของ VLAN แบบนี้ จะช่วยให้ท่านสามารถจัดสร้าง VLAN ได้อย่างง่ายดาย อย่างชนิดที่ไม่มีมาก่อน เนื่องจากว่า การกำหนด VLAN อาศัยโปรโตคอลการทำงานในระดับเน็ตเวิร์กซึ่งได้แก่ IP IPX หรือ AppleTalk (รูปที่ 6)</p>
<p>                      </p>
<p><strong>รูปที่ 6</strong> แสดงลักษณะการจัดแบ่ง VLAN แบบ Protocol-Based</p>
<p dir="ltr">Protocol-Based VLAN ถูกนำมาใช้บ่อยในสถานการณ์ที่เครือข่ายประกอบด้วยหลาย Segment หรือติดตั้งสวิตซ์หลาย ๆ ตัว รวมทั้งเครื่องคอมพิวเตอร์ต่างๆ มีการใช้โปรโตคอลที่แตกต่างกัน รวมทั้งเครื่องคอมพิวเตอร์เครื่องหนึ่งอาจติดตั้งใช้งานหลายโปรโตคอล เช่น มีการใช้งาน IP กับ NetBIOS ในเครื่องเดียวกัน</p>
<p dir="ltr"><strong>ข้อดีของการใช้ Protocol-Based VLAN</strong></p>
<p dir="ltr">ได้แก่ความยืดหยุ่น เนื่องจากว่าท่านสามารถกำหนดว่า จะให้ใครเป็นสมาชิกของ VLAN ใด ก็แล้วแต่ว่าใครใช้โปรโตคอลอะไร การใช้ VLAN แบบนี้มีประโยชน์มาก เนื่องจากเครื่องคอมพิวเตอร์ หรือเครื่องเซิร์ฟเวอร์สามารถติดตั้งไว้ที่ใด หรือสวิตซ์ตัวใดก็ได้ ตราบใดที่ยังเชื่อมต่อกันอยู่ ผู้ที่ใช้โปรโตคอลเดียวกัน จะสามารถสื่อสารถึงกันได้</p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td bgcolor="#ffffcc">
<p align="left"><strong>Application-Based VLAN</strong></p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td width="570">
<p dir="ltr" align="left">ท่านสามารถติดตั้ง VLAN โดยอาศัยลักษณะหรือชนิดของแอพพลิเคชันได้อีกด้วย แต่เป็นที่น่าเสียดายที่สวิตซ์ที่ให้การสนับสนุน การทำงานในลักษณะนี้ไม่ค่อยจะได้เห็นกันบ่อยนัก อีกทั้งมีราคาแพงมาก</p>
<p dir="ltr" align="left">จุดประสงค์ของการแยก VLAN โดยอาศัยแอพพลิเคชันนี้ เป็นการเอื้อประโยชน์ให้กับแอพพลิเคชันแต่ละตัวที่สามารถใช้แบนด์วิดธ์ได้อย่างเต็มประสิทธิภาพ อีกทั้งสามารถแยกประเภทของงานออกได้อย่างชัดเจน Application-Based VLAN จึงมีประโยชน์สำหรับหน่วยงานที่ต้องใช้งานที่จำเพาะเจาะจงเฉพาะผู้ใช้กลุ่มต่าง ๆ</p>
<p>                   </p>
<p><strong>รูปที่ 7</strong> แสดงลักษณะของ VLAN ที่อาศัยแอพพลิเคชันที่ต่างกันเป็นหลัก</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td bgcolor="#ffffcc">
<p align="left"><strong>การเชื่อมต่อ VLAN เข้าด้วยกัน</strong></p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td width="570">
<p dir="ltr" align="left">ไม่เพียงท่านจะสามารถติดตั้ง VLAN ได้ในสวิตซ์ตัวเดียวเท่านั้น แต่ยังสามารถติดตั้ง VLAN ไว้ตามสวิตซ์ต่าง ๆ ได้ และสามารถเชื่อมโยงสวิตซ์ต่าง ๆ เข้าด้วยกัน (รูปที่ <img src='http://www.kunawut.com/blog/wp-includes/images/smilies/icon_cool.gif' alt='8)' class='wp-smiley' /> </p>
<p>                     </p>
<p><strong>รูปที่ 8</strong> แสดงลักษณะการเชื่อมต่อ VLAN ประเภท IP หรือ Subnet-Based ด้วย เราเตอร์</p>
<p dir="ltr" align="left">นอกจากนี้ หากท่านต้องการเชื่อมต่อ VLAN ต่าง ๆ เข้าด้วยกัน ให้สามารถมองเห็นกันและสื่อสารกันได้ มีเพียงวิธีเดียวคือการติดตั้งเราเตอร์ เพื่อเชื่อมต่อระหว่าง VLAN เข้าด้วยกัน รูปแบบการเชื่อมต่อ เป็นไปตามรูปที่ 8 ซึ่งเหมาะสำหรับการเชื่อมต่อ VLAN ที่อยู่ต่างสวิตซ์เข้าด้วยกัน แต่ถ้าหากเป็นการเชื่อมต่อ VLAN ต่าง ๆ ที่ติดตั้งอยู่ในสวิตซ์เดียวกัน ท่านสามารถใช้สวิตซ์ตัวเดียว และเชื่อมต่อแบบ Single Edge หรือ One-arm Router ดูรูปที่ 9</p>
<p>                     </p>
<p><strong>รูปที่ 9</strong> แสดงการเชื่อมต่อ VLAN แบบ One-arm หรือ Single Edge Router</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td bgcolor="#ffffcc">
<p align="left"><strong>ชนิดของ VLAN ในความหมายของ Cisco</strong></p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td width="570">
<p dir="ltr" align="left">เมื่อใดที่มีการติดตั้ง VLAN บนสวิตซ์ในระดับ Access ท่านจะต้องกำหนดว่าจะให้คอมพิวเตอร์ เครื่องใดเป็นสมาชิกของ VLAN วงใดบ้าง สำหรับเครือข่าย Cisco ได้กำหนดความเป็นสมาชิกภาพของ VLAN อยู่ 2 ชนิด ได้แก่ Static VLAN และ Dynamic VLAN</p>
<p dir="ltr" align="left"><strong>Static VLAN</strong></p>
<p dir="ltr" align="left">Static VLANs เป็น VLAN ที่อาศัยการกำหนดหมายเลขของพอร์ตเป็นหลักในการกำหนดว่า จะให้เป็นสมาชิกของ VLAN วงใดบ้าง การกำหนดเช่นนี้ เป็นแบบตายตัว หมายความว่า ท่านจะต้องเป็นสมาชิกของ VLAN วงใดวงหนึ่งที่แน่นอน ตราบใดที่ท่านไม่ได้โยกย้ายสายแลนจากพอร์ตเดิมที่เครื่องคอมพิวเตอร์ของท่านติดตั้งอยู่ ให้ไปอยู่ที่พอร์ตอื่น ๆ ที่ได้กำหนดให้เป็น VLAN วงอื่นๆ หรือพูดง่ายๆ ก็คือ Static VLAN ก็คือ Port-Based VLAN ก็ไม่ผิดไปจากความจริงแต่อย่างใด</p>
<p dir="ltr" align="left"><strong>Dynamic VLAN</strong></p>
<p dir="ltr" align="left">การกำหนดความเป็นสมาชิกภาพของ Dynamic VLAN นั้น อาศัย MAC Address ของการ์ดแลนบนเครื่องคอมพิวเตอร์เป็นหลัก ไม่ว่าท่านจะย้าย เครื่องคอมพิวเตอร์ของท่านจากพอร์ตหนึ่งไปสู่พอร์ตใด ๆ ก็ตาม ท่านก็ยังไม่สามารถย้ายความเป็นสมาชิกภาพ ไปจาก VLAN เดิมที่ท่านสังกัดอยู่ ดังนั้น เราอาจกล่าวได้ว่า Dynamic VLAN ก็คือ MAC-Address-Based VLAN นั่นเอง (รูปที่ 10)</p>
<p>                      </p>
<p><strong>รูปที่ 10</strong> แสดงลักษณะการทำงานของ Dynamic VLAN ที่แสดงการใช้ MAC-Address เป็นหลัก</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td bgcolor="#ffffcc">
<p align="left"><strong>รู้จักกับ Tagged VLAN</strong></p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td width="570">                       <strong>รูปที่ 11</strong> จะเห็นว่า มีการเชื่อมต่อ VLAN 1 กับ VLAN 2 ระหว่างสวิตซ์ทั้งสอง</p>
<p dir="ltr" align="left">เราลองมาคิดดูว่า หากมีเครื่องคอมพิวเตอร์เครื่องหนึ่ง ที่เป็นสมาชิก VLAN 1 ซึ่งอยู่ในสวิตซ์ ชื่อ Sa ต้องการติดต่อกับคอมพิวเตอร์อีกเครื่องหนึ่งที่อยู่ใน VLAN 1 เช่นกัน แต่ติดตั้งอยู่ที่ Switches Hub ชื่อ Sb คำถามมีอยู่ว่า คอมพิวเตอร์ที่อยู่ใน VLAN 1 ของ Sa สามารถติดต่อกับคอมพิวเตอร์ ที่อยู่ใน VLAN 1 ของ Sb ได้อย่างไร? คำตอบคือ การใช้ วิธีการผสมผสานกัน ระหว่าง การใช้ VLAN Trunking กับการใช้ VLAN Tagging</p>
<p dir="ltr" align="left"><strong>Tagging VLAN คืออะไร?</strong></p>
<p dir="ltr" align="left">การที่จะให้ Sb ทราบว่า เฟรมข้อมูลที่มาจาก Sa นั้น มาจาก VLAN หมายเลขใด และมีจุดประสงค์ปลายทาง ที่ Sb บน VLAN หมายเลขใดนั้น ต้องอาศัย กรรมวิธีที่เรียกว่า Tagged VLAN โดยกรรมวิธีนี้ เป็นมาตรฐาน ของการสอดแทรก ข้อมูลข่าวสารเพิ่มเติมลงไปที่ เฟรมข้อมูล ข้อมูลข่าวสารนี้ ประกอบไปด้วย เลขหมายหรือข้อมูลที่แสดงความเป็นสมาชิกภาพของ VLAN ต่างๆ และต้องการติดต่อกับ VLAN เลขหมายเดียวกัน กระบวนการสอดแทรกข้อมูลนี้ เราเรียกว่า Frame Tagging (รูปที่ 12)</p>
<p dir="ltr" align="left">การทำ Frame Tagging นี้เป็นมาตรฐาน ที่เรียกว่า 802.1q ซึ่งเป็นมาตรฐานที่ใช้งานทั่วไป กับ Switches Hub ยี่ห้ออื่นๆ รวมทั้งใช้ได้กับบางรุ่นของ Cisco อีกด้วย ประโยชน์ของการใช้ Frame Tagging นี้ ก็เพื่อให้สามารถสื่อสารกันระหว่าง VLAN หมายเลขเดียวกัน แต่อยู่ต่าง Switches Hub กัน อย่างไรก็ดี Cisco ก็มีโปรโตคอล ที่มีจุดประสงค์ในทำนองเดียวกับ IEEE 802.1q ซึ่งก็คือ ISL หรือ Inter-switching Link</p>
<p>                     </p>
<p><strong>รูปที่ 12</strong> แสดงลักษณะของการสอดแทรกข่าวสารลงไปบน เฟรมข้อมูลที่เรียกว่า Tagged Frame</p>
<p dir="ltr" align="left"><strong>ISL คืออะไร?</strong></p>
<p dir="ltr" align="left">ISL เป็นโปรโตคอลที่ใช้เพื่อการ Encapsulation เฟรมข้อมูล ของ Cisco จุดประสงค์ก็เพื่อการสื่อสารกัน ระหว่าง VLAN หลายๆวง ที่กระจายไปตาม Switches Hub ต่างๆ โดยอาศัยสายสัญญาณเชื่อมต่อเพียงหนึ่งเดียว</p>
<p dir="ltr" align="left"><strong>Inter-Switch Link (ISL) Protocol</strong></p>
<p dir="ltr" align="left">ISL เป็น Protocol ที่ทำให้ VLAN สามารถสื่อสารกันผ่าน Switching Hub หลายๆตัวได้ โดยใช้วิธีการใส่ Header เพิ่มเติมเข้าไปที่ส่วนหัวของ Frame (รูปที่ 13)</p>
<p>                  </p>
<p><strong>รูปที่ 13</strong> แสดงการเชื่อมต่อระหว่าง VLAN ที่กระจายตาม Switches ต่างๆด้วย ISL Trunk</p>
<ul>
<li dir="ltr">
<p dir="ltr" align="left">ISL เป็น Protocol ของ Cisco ถูกนำมาใช้งานกับ Fast Ethernet และ Gigabit Ethernet Trunk Link เท่านั้น ซึ่งปัจจุบัน LAN Card จาก Intel และผู้ผลิตอื่นๆ ต่างๆ ให้การสนับสนุน ISL เป็นจำนวนมาก</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">หากท่านไม่ต้องการใช้ ISL Protocol แต่ต้องการสื่อสารระหว่าง VLAN บน Trunk Link ท่านจะต้องใช้ 802.10 Protocol</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">ISL ใช้วิธีการหนีบเอา (Tagging) ข้อมูลข่าวสารของ VLAN เข้าไปที่ Frame ของ Ethernet จากนั้นเดินทางจาก Switching Hub ตัวหนึ่งไปยังอีกตัวหนึ่งโดยทาง Trunk Link ระหว่าง Hub</p>
</li>
</ul>
<p>                  </p>
<p><strong>รูปที่ 14</strong> แสดงลักษณะการทำ Encapsulation ให้กับเฟรมข้อมูล โดยวิธี ISL ของ Cisco</p>
<ul>
<li dir="ltr">
<p dir="ltr" align="left">DA &#8211; เป็น 48 BIT MULITICAST DESTINATION ADDRESS</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">Type &#8211; เป็นข้อมูลอธิบายชนิดของข้อมูลที่ Encapsulated ไปที่เฟรมมีขนาด 4 BIT หากข้อมูลในช่อง Type นี้เป็น 0000 แสดงว่าเป็นอีเทอร์เนต หากเป็น 0001 แสดงว่าเป็น TOKEN RING และ 0010 = FDDI ส่วน 0011 เป็น ATM (รูปที่ 14)</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">USER &#8211; เป็น Descriptor ขนาด 4 BIT อันเป็นส่วนต่อเติมของ Type หรือใช้เพื่อนิยามระดับ PRIORITY ของอีเทอร์เนตประกอบด้วยค่า Binary โดยมี 0 เป็น Priority ต่ำสุด และ 3 เป็น Priority สูงสุด</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">SA &#8211; เป็น MAC Address ต้นทางขนาด 48 บิต สำหรับ Catalyst Switch</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">LEN &#8211; มีขนาดความยาว 16 บิต ใช้เพื่ออธิบายหรือแสดงขนาดความยาวของเฟรม ไม่รวม DA, Type , User , SA , LEN และ CRC</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">AAAA03 &#8211; Header มาตรฐานของ IEEE SNAP 802.2 LLC</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">HSA &#8211; 3 ไบต์แรกของ SA (ID.ของผู้ผลิตหรือ ID.ขององค์กร)</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">VLAN &#8211; VLAN ID.NO. ขนาด 15 BIT มีเพียง 10 BIT ลงมาที่ใช้เพื่อ 1024 VLAN</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">BPDU &#8211; เป็น Descriptor ขนาด 1 bit ใช้เพื่อพิสูจน์แสดงว่า เฟรมเป็น Spanning Tree BPDU หรือไม่ นอกจากนี้การตั้งค่าในช่องนี้ใช้แสดงว่า เฟรม ที่ถูก Encapsulate นี้ เป็น CDP หรือไม่</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">Index &#8211; เป็น Descriptor ขนาด 16 บิต ใช้เพื่อแสดง ID.NO. ของพอร์ตที่ส่งข้อมูลปกติจะถูกใช้เพื่อทำ Diagnostic</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">BRES &#8211; เป็นช่อง Reserved ขนาด 16 บิต สำหรับใส่ข้อมูลเพิ่มเติม เช่น FDDI Frame FC Fields</p>
</li>
</ul>
<p dir="ltr" align="left"><strong>การสร้าง Trunk Link ด้วย ISL</strong></p>
<ul>
<li dir="ltr">
<p dir="ltr" align="left">ท่านสามารถสร้าง Trunk Link ด้วย ISL ระหว่าง CISCO Switches 2 ตัวที่ Support ISL รวมทั้งระหว่าง Switch กับเราเตอร์และสวิตซ์กับเครื่องเซิร์ฟเวอร์ที่ติดตั้งการ์ดแลนที่ให้การสนับสนุน ISL</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">การทำ Tagging จะเกิดขึ้นหลังจากที่เฟรมข้อมูลได้วิ่งเข้าไปในพอร์ตของสวิตซ์?เรียบร้อยแล้ว จากนั้นเฟรมข้อมูลจะได้รับการ Tagged ด้วยข่าวสาร VLAN แล้ว มันก็จะสามารถวิ่งผ่านเราเตอร์หลาย ๆ ตัวรวมทั้งสวิตซ์โดยไม่ต้อง Tagging ใหม่อีกครั้ง การทำเช่นนี้จะช่วยลดดีเลย์ลงได้ เนื่องจากไม่ต้องถอดและ Tagging หลายครั้ง</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">ท่านจะต้องเข้าใจว่า&#8221;จะมีการใส่ข่าวสารของ VLAN เข้าไปที่ เฟรมข้อมูล ก็ต่อเมื่อเฟรมข้อมูลนั้น ต้องถูก Forward ออกไปที่ Trunk Link เท่านั้น แต่หากเป้าหมายปลายทางอยู่ใน Switches Hub เดียวกัน หรือมีเพียง Switches Hub เดียว ก็ไม่ต้องมีการทำ Tagging และข่าวสาร VLAN นี้จะถูกถอด (Decapsulation) ออกไป เมื่อ เฟรมข้อมูลนั้น กำลังจะเดินทางเข้าไปในสายสัญญาณที่เชื่อมต่อกับเครื่องคอมพิวเตอร์ปลายทางของ Switches Hub ปลายทาง&#8221;</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">ISL เป็นกระบวนการ Tagging ภายนอก ดังนั้นจึงไม่มีการเปลี่ยนแปลง เฟรมข้อมูล ใด ๆ ทั้งสิ้น โดยจะมีการ Tagging ข้อมูล Header ISL ขนาด 26 ไบต์ และมีการเพิ่มเติม Frame check SEQUENCE (FCS) เพิ่มมาอีก 4 ไบต์ ที่ท้ายสุดของ เฟรมข้อมูล</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">สิ่งที่ต้องตระหนักอีกประการหนึ่งก็คือ &#8221; มีเพียงอุปกรณ์ของ CISCO และ LAN Card ที่สนับสนุน ISL เท่านั้นที่จะสามารถเข้าใจ เฟรมข้อมูล ที่หนีบหรือ Tagged ด้วย ISL Header &#8220;</p>
</li>
</ul>
<p dir="ltr" align="left"><strong>ISL Encapsulation</strong></p>
<p dir="ltr" align="left">ISL ทำงานที่ OSI Layer 2 ทำงานโดย Encapsulating Ethernet Data Frame ด้วย ISL Header เพิ่มเข้าไปที่ส่วนหัวของ Frame</p>
<ul>
<li dir="ltr">
<p dir="ltr" align="left"> เนื่องจาก ISL เป็นโปรโตคอลที่ไม่ได้ขึ้นอยู่กับโปรโตคอลใดๆ ดังนั้นจึงไม่สามารถที่จะนำพาโปรโตคอลในระดับสูงได้</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">Administrator สามารถใช้ ISL เพื่อการเชื่อมต่อสวิตซ์แบบ Redundant Link และทำ Load Balance Traffic ระหว่างการเชื่อมต่อแบบคู่ขนาน โดยใช้ Spanning Tree Protocol</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">ISL ใช้เทคโนโลยี ASIC ดังนั้นเฟรมข้อมูลจะถูก Tagged ด้วยความเร็ว Wire Speed</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">Catalyst 1900 สามารถสนับสนุน 64 VLAN</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">ISL Header มีขนาด 10 บิตสำหรับการพิสูจน์ ความเป็นตัวตนของ VLAN ด้วย ISL ซึ่งจะทำให้สามารถรองรับการ (พิสูจน์แสดง) จำนวนของ VLAN ได้มากถึง 1024 VLAN</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">แม้ว่า Catalyst 1900 จะสามารถส่งผ่านข่าวสาร VLAN ได้มากถึง 1024 VLAN โดยยอมให้วิ่งผ่าน Trunk Link ก็ตาม แต่มันสนับสนุน Spanning Tree สำหรับ 64 VLAN แรก (1-64 ) (1 Spanning Tree/64 VLAN )</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">Catalyst 1900 มีเพียง 27 พอร์ต ดังนั้นจึงสามารถมี VLAN ต่างๆ ถึง 27 VLAN เท่านั้น แต่มันสามรถผ่าน Traffic ให้กับ VLAN ใดๆ ได้ เนื่องจากมัน Support ทั้ง 10 Field ของ ISL Head</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">ท่านสามารถสร้างและเพิ่ม Port ให้กับ VLAN เกิน 65 แต่มันจะไม่สามารถ Support Spanning Tree ให้กับ VLAN นั้น ๆ ผลก็คืออาจทำให้เกิด Bridge Loop</p>
</li>
</ul>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td bgcolor="#ffffcc">
<p align="left"><strong>VLAN Trunking Protocol (VTP) ของ Cisco</strong></p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td width="570">
<p dir="ltr" align="left">VTP เป็นโปรโตคอลของ Cisco ที่มีไว้เพื่อการแพร่ข่าวสารเกี่ยวกับ VLAN จาก Switches Hub หนึ่ง ไปยัง Switches Hub อื่นๆ อย่างต่อเนื่อง</p>
<p dir="ltr" align="left">VTP จะทำให้ Switches Hub ที่ติดตั้ง VLAN ต่าง ๆ ไม่ว่าจะมีกี่ VLAN ก็ตาม จะต้องแพร่ข้อมูลข่าวสารเกี่ยวกับ VLAN จาก Switches Hub นั้น ออกมา ยัง Switches Hub อื่นๆ ที่เชื่อมต่อกัน ด้วยสายแลน การแพร่ข้อมูลข่าวสารนี้ จะเกิดขึ้น เป็นระยะ ๆ เป็นห้วงเวลาที่แน่นอน เมื่อ Switches Hub ผู้รับ ได้รับข้อมูลข่าวสารเกี่ยวกับ VLAN แล้ว ก็จะทำการ Update ข้อมูลเกี่ยวกับ VLAN ของ Switches Hub ต้นทาง การทำเช่นนี้ จะช่วยให้ ผู้ดูแลเครือข่ายได้รับความสะดวก เนื่องจาก หากมีการเปลี่ยนในการจัดคอนฟิกของ VLAN ที่ Switches Hub หนึ่ง ก็จะมีการ Update ข้อมูลของ VLAN ที่เปลี่ยนแปลงไปนี้ ให้กับ Switches Hub อื่นๆ ทุกตัวบนเครือข่าย ทำให้ผู้ดูแลเครือข่าย ได้รับความสะดวก คือไม่ต้องไม่ไล่จัดคอนฟิกของ VLAN ให้กับ Switches อื่นๆอีก</p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td bgcolor="#ffffcc">
<p align="left"><strong>สรุปจุดประสงค์หลักของ VTP</strong></p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td width="570">
<p dir="ltr" align="left">VTP เป็น Protocol ที่ใช้เพื่อการแพร่ข้อมูลและจัดให้มีการประสานการทำงาน เกี่ยวกับ Configuration ของ VLAN ให้สามารถแพร่กระจายจาก Switches Hub ตัวหนึ่งไปตาม Switches Hub ต่าง ๆ ที่ต้องเชื่อมกันบนเครือข่ายเดียวกัน แต่การที่จะทำเช่นนี้ ได้ ท่านจะต้องจัดคอนฟิกให้ Switches ตัวนั้น เรียก VTP ออกมาใช้ วิธีการเรียก VTP ออกมาใช้ ท่านจะต้องสร้างชื่อ VTP Domain ด้วยคำสั่ง ที่สามารถจัด คอนฟิกได้บน Switches Hub</p>
<p dir="ltr" align="left">VTP จัดเป็น Layer 2 Messaging Protocol ที่ใช้เพื่อดูแลและรักษา VLAN Configuration บน Switch ต่าง ๆ ไม่ว่าจะมีการปรับเพิ่ม/ลดหรือการเปลี่ยนแปลงชื่อใด ๆ ของ VLAN เกิดขึ้นก็ตาม นอกจากนี้ VTP จะช่วยลดความผิดพลาดของ Configuration ให้น้อยลงมากที่สุดได้ และสามารถป้องกันการมีชื่อ VLAN ซ้ำ หรือชนิดของ VLAN ที่ผิดข้อกำหนดในการทำงาน</p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td bgcolor="#ffffcc">
<p align="left"><strong>VTP ADVERTISEMENT</strong></p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td width="570">
<p dir="ltr" align="left">สวิตซ์ที่อยู่ภายใต้ VTP Management Domain จะสามารถจัดแบ่งข่าวสารเกี่ยวกับ VLAN ได้โดยการใช้ วิธีการที่เรียกว่า VTP Advertisement ซึ่งมีอยู่ 3 แบบ ดังนี้</p>
<p dir="ltr" align="left">1.  Advertisement Request : เกิดขึ้นเมื่อ Client (ในที่นี้หมายถึง Switches Hub ที่ถูกกำหนดให้เป็น Client) ได้ร้องขอ ข่าวสารเกี่ยวกับ VLAN สำหรับเครือข่ายขณะในขณะนั้นออกมา และ Switches Hub ที่ถูกกำหนดให้เป็น Server จะใช้ VTP เพื่อจัดส่ง Advertisement อันเป็นข่าวสารเกี่ยวกับ VLAN นี้กลับมาที่ Client พร้อมด้วยข้อมูล เช่น Version Field , Code Field , reserved Field, Management Domain Field (ขนาด 32 ไบต์) รวมทั้ง Start value field</p>
<p dir="ltr" align="left">2. Summary Advertisement : จะมีการส่ง Advertisement นี้ออกมาทุก 5 นาที (300 วินาที) ไปยัง สวิตซ์ต่าง ๆ ทั้งหมดบนเครือข่าย Summary Advertisement อาจถูกส่งออกมาทันที หาก Topology มีการเปลี่ยนแปลง เช่น สวิตซ์บางตัวหยุดทำงานหรือเพิ่มสวิตซ์เข้าไปที่เครือข่าย</p>
<p dir="ltr" align="left">Summary Advertisement frame ประกอบด้วย Version Field , Code Field , Follower Field , Management Domain Name Field , Configuration version Number Field ข่าวสารที่ใช้แสดงตน ของผู้ Update , การประทับเวลา ของผู้ update และข้อมูลที่เข้ารหัสลับแบบ MD5</p>
<p dir="ltr" align="left">3. Sub-set Advertisement : ประกอบด้วยข้อมูลข่าวสารที่เป็นรายละเอียดเกี่ยวกับเครือข่าย รวมทั้ง version ,Code, เลขหมายที่แสดงลำดับการทำงาน Management Domain Name Configuration version No. และ VLAN Information Field</p>
<p dir="ltr" align="left"><strong>VTP ADVERTISEMENT สามารถประกอบด้วยข้อมูลข่าวสาร ดังนี้</strong></p>
<p dir="ltr" align="left">1.  802.10 SAID Values &#8211; สำหรับ FDDI Physical Media</p>
<p dir="ltr" align="left">2.  Configuration Revision number &#8211; ตัวเลขยิ่งสูง ข้อมูลก็ยิ่งได้รับการ Update มากขึ้น</p>
<p dir="ltr" align="left">3.  Emulated LAN names &#8211; ใช้สำหรับ ATM LANE</p>
<p dir="ltr" align="left">4.  Frame Format &#8211; ข้อมูลข่าวสารเกี่ยวกับ Format และ Content ของ Frame</p>
<p dir="ltr" align="left">5.  Management Domain Name &#8211; ชื่อของ VTP Management Domain ถ้าหาก Switch ถูกจัด Configuration ให้มี 1 ชื่อและรับ Frame ที่มีชื่ออื่นเข้ามา ข้อมูลข่าวสารจะถูก ignored</p>
<p dir="ltr" align="left">6.  MD5 Digest &#8211; ใช้เมื่อมีการใช้ Password ไปทั่วตลอดทั้ง Domain กุญแจที่ใช้จะต้อง Match กับกุญแจที่ให้ไว้กับเครื่องปลายทาง</p>
<p dir="ltr" align="left">7.  Update Identity &#8211; ค่าที่แสดงความเป็นตัวตนของ Switch ที่ Forward ค่า Summery ไปที่ Switches อื่นๆ</p>
<p dir="ltr" align="left">8.  VLAN Configuration &#8211; รวมทั้งข้อมูลข่าวสารของ VLAN ซึ่งเป็นที่รู้กันแล้วบนเครือข่าย รวมทั้ง Parameter เฉพาะเจาะจงและค่า MTU ของแต่ละ VLAN ใน VTP Management Domain</p>
<p dir="ltr" align="left">9.  VLAN Identification &#8211; ข้อมูลข่าวสารเกี่ยวกับ ISL หรือ 802.1Q</p>
<ul>
<li dir="ltr">
<p dir="ltr" align="left">Advertisement Frame ถูกส่งออกไปที่ Multicast Address ดังนั้นอุปกรณ์ VTP ทุกตัวใน Management DOMAIN เดียวกันสามารถได้รับ Frame และ Frame จะไม่ได้รับการ Forward ภายใต้การควบคุมของ Bridge ตามปกติ</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">VTP Management Domain มีอยู่ 2 แบบ ได้แก่</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">Server Originating Advertisement</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">Request advertisement จาก client ที่ต้องการข้อมูลข่าวสารของ VLAN เมื่อตอนที่ Client Boot up ระบบขึ้นมา</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">แต่ละ Advertisement จะมี Revision No. เป็นส่วนสำคัญที่สุด เมื่อใดที่ VTP Database ถูก Modified ก็จะมีการเพิ่มค่า Revision No. เป็น 1 จากนั้น VTP Server จะ Advertise ข่าวสารนั้นจากฐานข้อมูลไปสู่ Switch ตัวอื่น ๆ</p>
</li>
</ul>
<p dir="ltr" align="left">เมื่อ VTP Switch ได้รับ Advertisement ที่มี Revision No. สูงค่ากว่าในปัจจุบันก็จะมีการนำมา Update ที่ฐานข้อมูลปัจจุบัน ซึ่งอยู่ใน NVRAM</p>
<ul>
<li dir="ltr">
<p dir="ltr" align="left">ทุกครั้งที่ Server ส่ง Update Advertisement ออกมา มันจะเพิ่มค่า Revision No. 1 เลขหมาย หาก Client Switch ได้รับ 2 Advertisement พร้อมกัน มันรู้ว่าจะเลือกอันใด โดยดูจาก Revision No. ที่สูงกว่า</p>
</li>
</ul>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td bgcolor="#ffffcc">
<p align="left"><strong>VTP ทำงานได้อย่างไร</strong></p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td width="570">
<p dir="ltr" align="left">การทำ Advertisement ของ VTP เป็นการส่ง Advertisement แบบท่วมมันออกมาข้างนอกบนเครือข่ายในทุก ๆ 5 นาที หรือเมื่อมีการเปลี่ยนแปลง Configuration ของ VLAN เกิดขึ้น</p>
<p dir="ltr" align="left">VTP Advertisement จะถูกส่งออกมาบน default VLAN1 ( จากผู้ผลิต) โดยการใช้ Multicast Frame สิ่งอยู่ภายใน VTP Advertisement จะครอบคลุม Configuration Revision No. ตัวเลข Configuration Revision No. หมายถึง เป็น VLAN Information ที่ Update กว่าข้อมูลในปัจจุบัน</p>
<p dir="ltr" align="left">หากท่านใช้คำสั่งเรียกดู ข้อมูลเกี่ยวกับ VTP บน Switches ท่านจะเห็นได้โดยใช้คำสั่งดังนี้</p>
<table border="1" cellspacing="0" cellpadding="0" width="85%" bordercolor="#111111">
<tbody>
<tr>
<td width="85%"><strong>คำสั่ง Switch# sh vtp</strong>VTP Version : 1</p>
<p>Configuration revision : 53</p>
<p>Maximum VLANs supported locally : 1005</p>
<p>Number of existing VLANs : 5</p>
<p>VTP domain name : Wildcats</p>
<p>VTP password :</p>
<p>VTP operating mode : server</p>
<p>VTP pruning mode : Disabled</p>
<p>VTP traps generation : Enabled</p>
<p>Configuration last modified by : 172.16.100.8 at 00-00-0000 00:00:00</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td bgcolor="#ffffcc">
<p align="left"><strong>VTP SWITCH MODE</strong></p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td width="570">
<p dir="ltr" align="left">Cisco มี 3 Switch Mode ที่ใช้เพื่อการจัด Configured ให้กับสวิตซ์เพื่อให้มีส่วนร่วมในการทำงานบน VTP DOMAIN ได้แก่</p>
<ul>
<li dir="ltr">
<p dir="ltr" align="left">Client Mode</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">Server Mode</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">Transparent Mode</p>
</li>
</ul>
<p dir="ltr" align="left"><strong>Client Mode</strong></p>
<p dir="ltr" align="left">Client Mode จะทำให้สวิตซ์สามารถมีฟังก์ชันเดียวกับ Server Mode ยกเว้น แต่ว่ามันไม่สามารถเปลี่ยนแปลง VLAN INFORMATION ใด ๆ</p>
<p dir="ltr" align="left">Switch ที่ทำงานเป็น Client Mode ไม่สามารถเปลี่ยนแปลง VLAN Information ใด ๆ ไม่สามารถ Modify ,Create , Delete VLAN บน Client Switch ใด ๆ แต่เมื่อใดที่มันได้รับ Advertisement จากสวิตซ์ที่ทำงานใน Server Mode มันสามารถ Advertisement VLAN Configuration ของมัน รวมทั้งการทำ Synchronize VALN Information ไปที่ Switch อื่น ๆ บนเครือข่าย เมื่อใดที่ Restart แล้วค่า Global VLAN Info. จะหายไป</p>
<p dir="ltr" align="left"><strong>Server Mode</strong></p>
<p dir="ltr" align="left">Server Mode จะถูกจัด Configured โดย Default สามารถให้ Create , Modify และ Delete VLAN เพื่อที่จะบริหารจัดการ Domain เมื่อมีการเปลี่ยนแปลง Configuration ก็จะมีการส่งไปที่สมาชิกอื่น ๆ ใน VTP Domain ใน 1 เครือข่ายอาจมีสวิตซ์มากกว่า 1 ตัว ที่สามารถถูกจัด Configured ให้เป็น Server Mode เพื่อผลแห่ง Redundant</p>
<p dir="ltr" align="left">เมื่อใดที่ Restart Server แล้วค่า Configuration อันเป็น Global VLAN Information จะยังคงถูกรักษาไว้</p>
<p dir="ltr" align="left"><strong>Transparent Mode</strong></p>
<p dir="ltr" align="left">Transparent Mode ทำให้ VTP Switch ที่ถูก Configured เป็น Mode นี้ ไม่ต้องรับ VTP Information ที่เข้ามาเพื่อ Update มัน แต่จะส่งผ่านต่อไปยังสวิตซ์ตัวอื่น ๆ ภายใน VTP Domain แม้ว่า Switch ใน Transparent Mode จะสามารถวิ่ง VTP Information รวมทั้ง Advertisement ไปยัง Switch อื่น ๆ แต่มันจะไม่สามารถ Update ฐานข้อมูลตัวมันเอง รวมทั้งส่งออกข่าวสารเกี่ยวกับ Topology ที่เปลี่ยนไป</p>
<p dir="ltr" align="left">Mode นี้ : สวิตซ์ทำหน้าที่ส่งผ่าน Information เฉย ๆ ไม่มี VTP Function ไม่มีการส่ง Advertisement ไม่มี Synchronization</p>
<p dir="ltr" align="left">แต่ VTP Version 2 อนุญาติให้ Transparent Mode สามารถ Forward Advertisement ที่มันได้รับไปยัง Switch ที่ได้ถูกจัด Configured Trunk Port</p>
<p dir="ltr" align="left">Cisco ได้กำหนดไว้เป็นค่า Default ว่า ตัว Switches Hub ตัวแรกที่ติดตั้ง VLAN จะต้องทำงานในฐานะของ Server Mode ซึ่งหาก Switches Hub ใดทำงานเป็น Server Mode ตัว Switches Hub นั้น จะต้องรับผิดชอบในการแพร่ข่าวสารเกี่ยวกับ คอนฟิกของ VLAN ออกมา</p>
<p align="left">ตารางที่ 1 แสดงขีดความสามารถของ Mode ต่างๆ ของ VTP Modes</p>
<table border="1" cellspacing="0" cellpadding="0" width="500" bordercolor="#000000">
<tbody>
<tr>
<td valign="top">
<h4>Server Mode</h4>
</td>
<td valign="top">
<p align="center"><strong>Client Mode</strong></p>
</td>
<td valign="top">
<p align="center"><strong>Transparent Mode</strong></p>
</td>
</tr>
<tr>
<td valign="top">Sends/forward VTP advertisements.</td>
<td valign="top">Sends/forwards VTP Advertisements.</td>
<td valign="top">
<p align="center">ส่งผ่าน VTP advertisements.</p>
</td>
</tr>
<tr>
<td valign="top">ประสานการทำงานกับVLAN</td>
<td valign="top">ประสานการทำงานกับ VLAN</td>
<td valign="top">
<p align="center">ไม่ประสานการทำงานกับ VLAN</p>
</td>
</tr>
<tr>
<td valign="top">ค่าคอนฟิกของ VLAN เก็บไว้ใน NVRAM.</td>
<td valign="top">ค่า คอนฟิกของ VLAN ไม่ถูกเก็บไว้ใน NVRAM.</td>
<td valign="top">
<p align="center">ค่าคอนฟิกของ VLAN จะถูกเก็บไว้ใน NVRAM</p>
</td>
</tr>
<tr>
<td valign="top">Catalyst switch สามารถสร้าง VLANs.</td>
<td valign="top">Catalyst switch ไม่สามารถสร้าง VLANs.</td>
<td valign="top">
<p align="center">Catalyst switch สามารถสร้าง VLANs.</p>
</td>
</tr>
<tr>
<td valign="top">Catalyst switch สามารถแก้ไขข้อมูล VLANs.</td>
<td valign="top">Catalyst switch ไม่สามารถแก้ไขข้อมูล VLANs.</td>
<td valign="top">
<p align="center">Catalyst switch แก้ไขข้อมูล VLAN</p>
</td>
</tr>
<tr>
<td valign="top">Catalyst switch สามารถลบVLANs.</td>
<td valign="top">Catalyst switch ไม่สามารถลบVLANs.</td>
<td valign="top">
<p align="center">Catalyst switch สามารถลบ VLANs.</p>
</td>
</tr>
</tbody>
</table>
<p dir="ltr" align="left">เมื่อใดที่มีการจัดตั้ง VTP บนสวิตซ์ท่านควรเลือก Mode ที่เหมาะสม เนื่องจาก VTP สามารถเขียนทับ VLAN Configuration ลงบนสวิตซ์บางตัวและสร้างปัญหาให้กับเครือข่ายได้</p>
<p dir="ltr" align="left"><strong>แนวทางการเลือก Mode</strong></p>
<ul>
<li dir="ltr">
<p dir="ltr" align="left">Server Mode : ควรใช้กับสวิตซ์ที่ท่านจะใช้สร้าง, เปลี่ยนหรือลบ VLAN โดยเครื่องเซิร์ฟเวอร์จะส่งผ่านข่าวสารนี้ไปยังเครื่องเซิร์ฟเวอร์ตัวอื่น ๆ ที่ถูกจัด Configured เป็นเครื่องเซิร์ฟเวอร์หรือ เครื่องไคลเอนต์</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">Client Mode : ควรใช้กับสวิตซ์ที่จะถูกนำมาเพิ่มเข้ามาเป็นเครือข่ายหรือเข้ามาเป็น VTP Domain ด้วยกันเพื่อป้องกันการถูกเขียนทับ</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">Transparent Mode: ใช้กับสวิตซ์ที่เราต้องการจะส่งผ่าน Advertisement (VTP) ไปยังสวิตซ์อื่น ๆ แต่ก็ยังต้องการคงไว้ซึ่งขีดความสามารถที่จะบริหารจัดการ VLAN ได้อย่างอิสระ</p>
</li>
</ul>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td bgcolor="#ffffcc">
<p align="left"><strong>VTP Pruning</strong></p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td width="570">
<p dir="ltr" align="left">VLAN VTP PRUNING ถูกใช้เพื่อการเพิ่มแบนด์วิดธ์ให้กับเครือข่าย โดยการลด LAN Traffic ที่วิ่ง ผ่าน Switch Trunk Link ซึ่ง LAN Traffic ในที่นี้หมายถึง ข้อมูลข่าวสารเกี่ยวกับ VLAN (รูปที่ 15)</p>
<p>                 </p>
<p>                  </p>
<p><strong>รูปที่ 15</strong> แสดงการใช้ VTP Pruning (ซ้าย) และไม่ได้ใช้ VTP Pruning (ขวา)</p>
<p dir="ltr" align="left">VTP PRUNING จะทำหน้าที่ Filter Network Traffic เช่น Broadcast, Multicast และ Unicast บน Trunk Link ที่เชื่อมต่อที่ประกอบด้วย พอร์ตที่ไม่มี VLAN หมายความว่า VTP Pruning จะช่วยป้องันมิให้ข้อมูลข่าวสารเกี่ยวกับ VLAN วิ่งไปยัง Switches Hub ใดที่ไม่ได้ติดตั้ง VLAN นั้นอยู่</p>
<p dir="ltr" align="left"> เมื่อ VTP Pruning ถูก Enable บนเครื่องเซิร์ฟเวอร์ข่าวสารจะถูกแพร่กระจายไปที่ไคลเอนต์ทั้งหมด รวมทั้ง สวิตซ์ที่ถูก Configure เป็น Server mode ใน VTP Management Domain</p>
<p dir="ltr">                    </p>
<p dir="ltr"><strong>รูปที่ 16</strong> แสดงการส่งต่อของข่าวสารเกี่ยวกับ VLAN ภายใต้ VTP</p>
<p dir="ltr" align="left"> <strong>จากรูปที่ 16 </strong></p>
<p dir="ltr" align="left">1. Switch A รับเอา Broadcast จากพอร์ตVLAN 20</p>
<p dir="ltr" align="left">2. Switch A จะ ส่งข้อมูลข่าวสารในรูปแบบ Broadcast เกี่ยวกับ VLAN 20 ออกไปยัง Trunk Port ทั้งหมดในกรณีนี้ Trunk Port ก็คือ สายสัญญาณเชื่อมต่อไปที่ Switch B</p>
<p dir="ltr" align="left">3. Switch B จะทำอย่างเดียวกับ Switch A คือ Forward Broadcast ออกไปที่ VLAN 20 ของ Switches B รวมทั้ง Trunk port ที่เชื่อมต่อกับ Switches C</p>
<p dir="ltr" align="left">4. Switch C จะทำซ้ำกระบวนการนี้ เพียงแต่ว่ามันไม่มี VLAN 20 ที่ Port ของมัน ดังนั้นมันจะ Forward หรือส่งต่อ เฟรมข้อมูลไปข้างหน้า ซึ่งก็คือไปที่ Trunk port ทั้งหมด</p>
<p dir="ltr" align="left">5. เมื่อ Switch D ได้รับ Broadcast สำหรับ VLAN 20 มันจะ ละทิ้งไป เนื่องจาก Switch D ไม่มี port VLAN 20 หรือ Trunk port อื่นนอกจาก Trunk port ที่มันรับ Broadcast เข้ามา ( จะเห็นว่า Broadcast Traffic ที่วิ่งมาจาก Switch B มายัง C จาก C มายัง D เป็นเรื่องไม่จำเป็น</p>
<p dir="ltr" align="left">การใช้ VTP Prunning จะ ทำให้ Switches ทำการกีดกันมิให้มีการ Forward Traffic ที่ไม่จำเป็นเหล่านี้ออกมา โดยการแลกเปลี่ยนข่าวสาร VLAN ที่ Active อยู่ ก็จะทำให้ Switches จะสามารถล่วงรู้ได้ว่า Traffic ใดเป็นของจำเป็น จากตัวอย่างนี้ VTP Prunning จะป้องกันมิให้ Forward Broadcast ที่ไม่จำเป็นออกมา</p>
<p> </td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td bgcolor="#ffffcc">
<p align="left"><strong>แนวทางการจัด VLAN CONFIGURATION</strong></p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td width="570">
<ul>
<li dir="ltr">
<p dir="ltr" align="left">ท่านสามารถติดตั้งสูงสุดได้ไม่เกิน 64 VLAN สำหรับ Desk Top Catalyst Switches ทั่วไป เช่น รุ่น 1900</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">รุ่น 1900 ได้รับการจัดตั้ง Default ให้ทุก Port เป็น VLAN1 จากโรงงานที่มีการใช้ CDP และ VTP Advertisement</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">Catalyst 1900 IP Address จะต้องอยู่ใน VLAN 1 Broadcast Domain (หมายความว่า Catalyst 1900 ต้องการมี IP Address เพื่อที่จะสามารถใช้ Telnet เข้ามา บริหารจัดการ ภายในได้ โดย IP Address นี้จะต้องอยู่ใน VLAN1 โดย Default)</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">นอกจาก Telnet แล้ว ยังสามารถใช้ Visual Switch Manager (VSM) โดยทำงาน บน HTTP Browser เพื่อ Configured Switch</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">ก่อนที่จะเริ่มสร้าง VLAN Switch จะต้องอยู่ที่ VTP Server Mode หรือ VTP Transparent Mode หากท่านต้องการจะให้ข่าวสาร VLAN วิ่งไปยัง Switch อื่น ใน Domain ให้ใช้ Server Mode หากต้องการเพียง Add, VLAN เข้าไปที่ Local Switch ให้ใช้ Transparent Mode</p>
</li>
</ul>
<p> </td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td bgcolor="#ffffcc">
<p align="left"><strong>ขั้นตอนการจัด Configuration Mode</strong></p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td width="570">
<p dir="ltr" align="left">1. ก่อนจะสร้าง VLAN ท่านจะต้องตัดสินใจว่าจะให้ใช้ VTP เพื่อดูแลรักษา Global VLAN Configuration Information บน Network หรือไม่?</p>
<p dir="ltr" align="left">2. ถ้าต้องการให้ VLAN กระจายไปตาม Switch Hub ต่างๆ ด้วย Single Link ท่านจะต้อง Configured Fast Ethernet Trunk เพื่อ Interconnect ระหว่าง Switch</p>
<p dir="ltr" align="left">3. โดยค่า Default แล้ว Switch ปกติจะถูกจัดเป็น Server Mode อยู่แล้ว ดังนั้นสามารถเพิ่มหรือเปลี่ยนแปลงหรือลง VLAN ได้เลย แต่หาก Switch นั้นถูกตั้งเป็น Client Mode, VLAN จะไม่สามารถถูกเพิ่ม, เปลี่ยนแปลงหรือลบทิ้ง</p>
<p dir="ltr" align="left">4. ความเป็นสมาชิกของ VLAN บน Switch Port จะถูกกำหนดได้แบบ Manual แบบที่จะ Port เท่านั้น เมื่อท่านกำหนด Switch Port ให้กับ VLAN แ</p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td bgcolor="#ffffcc">
<p align="left"><strong>แนวทางการจัด VTP Configuration</strong></p>
</td>
</tr>
</tbody>
</table>
<table border="0" width="570">
<tbody>
<tr>
<td width="570">
<ul>
<li dir="ltr">
<p dir="ltr" align="left">VTP domain name : กำหนดชื่อของ VTP Domain</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">VTP mode: Server</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">VTP password : None (Option)</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">VTP pruning : Disabled</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">VTP trap : Enabled</p>
</li>
</ul>
<p dir="ltr" align="left">Domain Name สามารถถูกกำหนดโดย Administrator หรือเรียนรู้เองจาก Trunk Line ที่ถูกจัด Configured ไว้แล้ว จาก Server ที่ได้มีการจัดตั้งชื่อ Domain ไว้แล้ว โดย Default แล้ว Domain Name ไม่ถูกจัดตั้งและโดย Default : Switch จะถูก Set เป็น VTP Server Mode</p>
<ul>
<li dir="ltr">
<p dir="ltr" align="left">ท่านสามารถให้ password แก่ VTP Management Domain โดยพาสเวิร์ดที่ใส่เข้าไปจะต้องเหมือนกันกับสวิตซ์ทั้งหมดภายใน Domain หากท่าน Configured VTP password, VTP จะทำงานไม่ปกติจนกว่าท่านจะได้กำหนดชื่อ password เดียวกันไปที่สวิตซ์ภายใน Domain</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">VTP pruning เป็น Parameter หนึ่งของ VLAN ที่จะได้รับการ Advertised โดย VTP Protocol การ Enable หรือ Disable Pruning บน VTP Server จะมีการแพร่ ออกไปทั่วทั้ง Domain การ Enable หรือ Disable VTP Pruning บน VTP Server จะมีผลกระทบต่อ Management Domain ทั่วทั้งหมด</p>
</li>
<li dir="ltr">
<p dir="ltr" align="left">VTP Trap จะถูก Enable โดย Default ซึ่งจะทำให้ SNMP Message ถูกสร้างขึ้นทุกครั้งที่มีการส่ง VTP Message ใหม่ๆ</p>
</li>
</ul>
</td>
</tr>
</tbody>
</table>
<p> </p>
<p>ที่มา: <a href="http://webserv.kmitl.ac.th/~s6066504/ciscovlan1.htm">http://webserv.kmitl.ac.th/~s6066504/ciscovlan1.htm</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.kunawut.com/blog/?feed=rss2&amp;p=548</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HOWTO : Hardening your Apache and PHP on Ubuntu 9.04 Server</title>
		<link>http://www.kunawut.com/blog/?p=545</link>
		<comments>http://www.kunawut.com/blog/?p=545#comments</comments>
		<pubDate>Fri, 09 Jul 2010 00:11:39 +0000</pubDate>
		<dc:creator>คุณาวุฒิ</dc:creator>
				<category><![CDATA[PHP & MySQL Programing]]></category>

		<guid isPermaLink="false">http://www.kunawut.com/blog/?p=545</guid>
		<description><![CDATA[ผมเขียนบันทึกนี้ หลังจาก server ผมมีคนพยายามเข้ามา hack จนเครื่องผมค้างไปเลย เป็นสิ่งที่ดีคับ ทำให้ผมมีความรู้ และเข้าใจมากขึ้น ผมหาอ่านบทความ และก็ได้แปลมา ขอนอกเรื่องครับ ผมเขียน blog ที่อุณหภูมิ 31 องศาเซลเซียส อ้าวได้ใจมากคับ
หลังจากติดตั้ง LAMP แล้ว สิ่งที่อย่างแรกคือ การป้องกันการโจมตี
Step 1: ป้องกันการแสดงผลแบบ list view



sudo nano /etc/apache2/sites-available/default



เพิ่มเครื่องหมายลบ &#8211; หน้า Index ตามแบบข้างล่าง
&#60;Directory /var/www/&#62;
    Options -Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order allow,deny
    allow from all
&#60;/Directory&#62;
 
Step 2 :
สำหรับ Apache ตั้งแต่ version 1.3.34 และ 2.0.55 ขึ้นไปนะครับ ทำได้โดยเพิ่ม
TraceEnable Off
ใน config ของ apache ซึ่งจะทำให้ปิดการใช้งาน [...]]]></description>
			<content:encoded><![CDATA[<p>ผมเขียนบันทึกนี้ หลังจาก server ผมมีคนพยายามเข้ามา hack จนเครื่องผมค้างไปเลย เป็นสิ่งที่ดีคับ ทำให้ผมมีความรู้ และเข้าใจมากขึ้น ผมหาอ่านบทความ และก็ได้แปลมา ขอนอกเรื่องครับ ผมเขียน blog ที่อุณหภูมิ 31 องศาเซลเซียส อ้าวได้ใจมากคับ</p>
<p>หลังจากติดตั้ง LAMP แล้ว สิ่งที่อย่างแรกคือ การป้องกันการโจมตี<br />
Step 1: ป้องกันการแสดงผลแบบ list view</p>
<table style="text-align: left; width: 90%; border-collapse: collapse; vertical-align: middle; border: #000000 1px solid;" border="0" cellspacing="0" cellpadding="3" align="center" bordercolor="#ff6600">
<tbody>
<tr bordercolor="#ff9900">
<td style="border-left: #000000 1px solid; width: 100%; border-top: #000000 1px solid;" bgcolor="#ff9900">sudo nano /etc/apache2/sites-available/default</td>
</tr>
</tbody>
</table>
<p>เพิ่มเครื่องหมายลบ &#8211; หน้า Index ตามแบบข้างล่าง</p>
<p>&lt;Directory /var/www/&gt;<br />
<tt> </tt><tt> </tt><tt> </tt><tt> </tt>Options -Indexes FollowSymLinks MultiViews<br />
<tt> </tt><tt> </tt><tt> </tt><tt> </tt>AllowOverride None<br />
<tt> </tt><tt> </tt><tt> </tt><tt> </tt>Order allow,deny<br />
<tt> </tt><tt> </tt><tt> </tt><tt> </tt>allow from all<br />
&lt;/Directory&gt;</p>
<p> </p>
<p>Step 2 :</p>
<p>สำหรับ Apache ตั้งแต่ version 1.3.34 และ 2.0.55 ขึ้นไปนะครับ ทำได้โดยเพิ่ม</p>
<p>TraceEnable Off</p>
<p>ใน config ของ apache ซึ่งจะทำให้ปิดการใช้งาน Trace ได้</p>
<p>ถ้าเป็นรุ่นเก่ากว่านี้หน่อยต้องเปิดใช้ rewrite module ของ Apache.</p>
<table style="text-align: left; width: 90%; border-collapse: collapse; vertical-align: middle; border: #000000 1px solid;" border="0" cellspacing="0" cellpadding="3" align="center" bordercolor="#ff6600">
<tbody>
<tr bordercolor="#ff9900">
<td style="border-left: #000000 1px solid; width: 100%; border-top: #000000 1px solid;" bgcolor="#ff9900">sudo a2enmod rewrite</td>
</tr>
</tbody>
</table>
<p>เพื่อหลีกเลี่ยงการโจมตีแบบ Cross-Site-Tracing ให้เพิ่ม 3 บรรทัดนี้ ใน &#8221; &lt;VirtualHost *:80&gt;&#8221; :</p>
<p>    RewriteEngine On<br />
    RewriteCond %{REQUEST_METHOD} ^(TRACETRACK)<br />
    RewriteRule .* &#8211; [F]</p>
<p>Step 3 :</p>
<p>เพื่อป้องการทำ HTTP DoS, DDoS หรือ Brute Force attack, ต้องติดตั้ง Moduleนี้</p>
<table style="text-align: left; width: 90%; border-collapse: collapse; vertical-align: middle; border: #000000 1px solid;" border="0" cellspacing="0" cellpadding="3" align="center" bordercolor="#ff6600">
<tbody>
<tr bordercolor="#ff9900">
<td style="border-left: #000000 1px solid; width: 100%; border-top: #000000 1px solid;" bgcolor="#ff9900">sudo apt-get install libapache2-mod-evasive</td>
</tr>
</tbody>
</table>
<p>Step 4 :</p>
<p>To screen out bad URL requests, such as /etc/shadow or MySQL injection and etc. You should install mod_security module. If you installed a amd64 (64-bit) version of Ubuntu Server, please replaced i386 with amd64 for the following commands.</p>
<p>wget http://etc.inittab.org/~agi/debian/libapache-mod-security2/libapache-mod-security_2.5.9-1_i386.deb</p>
<p>wget http://etc.inittab.org/~agi/debian/libapache-mod-security2/mod-security-common_2.5.9-1_all.deb</p>
<p>sudo dpkg -i libapache-mod-security_2.5.9-1_i386.deb mod-security-common_2.5.9-1_all.deb</p>
<p>Step 5 :</p>
<p>ไม่อนุญาตให้ print the error pages</p>
<table style="text-align: left; width: 90%; border-collapse: collapse; vertical-align: middle; border: #000000 1px solid;" border="0" cellspacing="0" cellpadding="3" align="center" bordercolor="#ff6600">
<tbody>
<tr bordercolor="#ff9900">
<td style="border-left: #000000 1px solid; width: 100%; border-top: #000000 1px solid;" bgcolor="#ff9900">sudo nano /etc/apache2/conf.d/security</td>
</tr>
</tbody>
</table>
<p>แก้ไขตามนี้</p>
<p>ServerToken Prod<br />
ServerSignature Off</p>
<p>Step 6 :</p>
<p>มาถึงคิวของ PHP</p>
<table style="text-align: left; width: 90%; border-collapse: collapse; vertical-align: middle; border: #000000 1px solid;" border="0" cellspacing="0" cellpadding="3" align="center" bordercolor="#ff6600">
<tbody>
<tr bordercolor="#ff9900">
<td style="border-left: #000000 1px solid; width: 100%; border-top: #000000 1px solid;" bgcolor="#ff9900">sudo nano /etc/php5/apache2/php.ini</td>
</tr>
</tbody>
</table>
<p>แก้ไขให้เป็นแบบข้างล่างนี้</p>
<p>display_errors = Off<br />
log_errors = On<br />
allow_url_fopen = Off<br />
expose_php = Off<br />
enable_dl = Off<br />
disable_functions = system, show_source, symlink, exec, dl, shell_exec, passthru, phpinfo, escapeshellarg, escapeshellcmd</p>
<p>Step 7 :</p>
<p>ขั้นตอนสุดท้าย</p>
<table style="text-align: left; width: 90%; border-collapse: collapse; vertical-align: middle; border: #000000 1px solid;" border="0" cellspacing="0" cellpadding="3" align="center" bordercolor="#ff6600">
<tbody>
<tr bordercolor="#ff9900">
<td style="border-left: #000000 1px solid; width: 100%; border-top: #000000 1px solid;" bgcolor="#ff9900">sudo /etc/init.d/apache2 restart</td>
</tr>
</tbody>
</table>
<p>Step 8 :</p>
<table style="text-align: left; width: 90%; border-collapse: collapse; vertical-align: middle; border: #000000 1px solid;" border="0" cellspacing="0" cellpadding="3" align="center" bordercolor="#ff6600">
<tbody>
<tr bordercolor="#ff9900">
<td style="border-left: #000000 1px solid; width: 100%; border-top: #000000 1px solid;" bgcolor="#ff9900">sudo nano /etc/sysctl.conf</td>
</tr>
</tbody>
</table>
<p>เอา # ออก</p>
<p>#Enable TCP SYN Cookie Protection<br />
net.ipv4.tcp_syncookies = 1</p>
<p>สั่งให้ทำงานเลย</p>
<table style="text-align: left; width: 90%; border-collapse: collapse; vertical-align: middle; border: #000000 1px solid;" border="0" cellspacing="0" cellpadding="3" align="center" bordercolor="#ff6600">
<tbody>
<tr bordercolor="#ff9900">
<td style="border-left: #000000 1px solid; width: 100%; border-top: #000000 1px solid;" bgcolor="#ff9900">sudo /sbin/sysctl -p</td>
</tr>
</tbody>
</table>
<p>ผมเขียนบันทึกนี้ หลังจาก server ผมมีคนพยายามเข้ามา hack จนเครื่องผมค้างไปเลย เป็นสิ่งที่ดีคับ ทำให้ผมมีความรู้ และเข้าใจมากขึ้น ผมหาอ่านบทความ และก็ได้แปลมา ขอนอกเรื่องครับ ผมเขียน blog ที่อุณหภูมิ 31 องศาเซลเซียส อ้าวได้ใจมากคับ</p>
<p>หลังจากติดตั้ง LAMP แล้ว สิ่งที่อย่างแรกคือ การป้องกันการโจมตี<br />
Step 1: ป้องกันการแสดงผลแบบ list view</p>
<table style="text-align: left; width: 90%; border-collapse: collapse; vertical-align: middle; border: #000000 1px solid;" border="0" cellspacing="0" cellpadding="3" align="center" bordercolor="#ff6600">
<tbody>
<tr bordercolor="#ff9900">
<td style="border-left: #000000 1px solid; width: 100%; border-top: #000000 1px solid;" bgcolor="#ff9900">sudo nano /etc/apache2/sites-available/default</td>
</tr>
</tbody>
</table>
<p>เพิ่มเครื่องหมายลบ &#8211; หน้า Index ตามแบบข้างล่าง</p>
<p>&lt;Directory /var/www/&gt;<br />
<tt> </tt><tt> </tt><tt> </tt><tt> </tt>Options -Indexes FollowSymLinks MultiViews<br />
<tt> </tt><tt> </tt><tt> </tt><tt> </tt>AllowOverride None<br />
<tt> </tt><tt> </tt><tt> </tt><tt> </tt>Order allow,deny<br />
<tt> </tt><tt> </tt><tt> </tt><tt> </tt>allow from all<br />
&lt;/Directory&gt;</p>
<p> </p>
<p>Step 2 :</p>
<p>สำหรับ Apache ตั้งแต่ version 1.3.34 และ 2.0.55 ขึ้นไปนะครับ ทำได้โดยเพิ่ม</p>
<p>TraceEnable Off</p>
<p>ใน config ของ apache ซึ่งจะทำให้ปิดการใช้งาน Trace ได้</p>
<p>ถ้าเป็นรุ่นเก่ากว่านี้หน่อยต้องเปิดใช้ rewrite module ของ Apache.</p>
<table style="text-align: left; width: 90%; border-collapse: collapse; vertical-align: middle; border: #000000 1px solid;" border="0" cellspacing="0" cellpadding="3" align="center" bordercolor="#ff6600">
<tbody>
<tr bordercolor="#ff9900">
<td style="border-left: #000000 1px solid; width: 100%; border-top: #000000 1px solid;" bgcolor="#ff9900">sudo a2enmod rewrite</td>
</tr>
</tbody>
</table>
<p>เพื่อหลีกเลี่ยงการโจมตีแบบ Cross-Site-Tracing ให้เพิ่ม 3 บรรทัดนี้ ใน &#8221; &lt;VirtualHost *:80&gt;&#8221; :</p>
<p>    RewriteEngine On<br />
    RewriteCond %{REQUEST_METHOD} ^(TRACETRACK)<br />
    RewriteRule .* &#8211; [F]</p>
<p>Step 3 :</p>
<p>เพื่อป้องการทำ HTTP DoS, DDoS หรือ Brute Force attack, ต้องติดตั้ง Moduleนี้</p>
<table style="text-align: left; width: 90%; border-collapse: collapse; vertical-align: middle; border: #000000 1px solid;" border="0" cellspacing="0" cellpadding="3" align="center" bordercolor="#ff6600">
<tbody>
<tr bordercolor="#ff9900">
<td style="border-left: #000000 1px solid; width: 100%; border-top: #000000 1px solid;" bgcolor="#ff9900">sudo apt-get install libapache2-mod-evasive</td>
</tr>
</tbody>
</table>
<p>Step 4 :</p>
<p>To screen out bad URL requests, such as /etc/shadow or MySQL injection and etc. You should install mod_security module. If you installed a amd64 (64-bit) version of Ubuntu Server, please replaced i386 with amd64 for the following commands.</p>
<p>wget http://etc.inittab.org/~agi/debian/libapache-mod-security2/libapache-mod-security_2.5.9-1_i386.deb</p>
<p>wget http://etc.inittab.org/~agi/debian/libapache-mod-security2/mod-security-common_2.5.9-1_all.deb</p>
<p>sudo dpkg -i libapache-mod-security_2.5.9-1_i386.deb mod-security-common_2.5.9-1_all.deb</p>
<p>Step 5 :</p>
<p>ไม่อนุญาตให้ print the error pages</p>
<table style="text-align: left; width: 90%; border-collapse: collapse; vertical-align: middle; border: #000000 1px solid;" border="0" cellspacing="0" cellpadding="3" align="center" bordercolor="#ff6600">
<tbody>
<tr bordercolor="#ff9900">
<td style="border-left: #000000 1px solid; width: 100%; border-top: #000000 1px solid;" bgcolor="#ff9900">sudo nano /etc/apache2/conf.d/security</td>
</tr>
</tbody>
</table>
<p>แก้ไขตามนี้</p>
<p>ServerToken Prod<br />
ServerSignature Off</p>
<p>Step 6 :</p>
<p>มาถึงคิวของ PHP</p>
<table style="text-align: left; width: 90%; border-collapse: collapse; vertical-align: middle; border: #000000 1px solid;" border="0" cellspacing="0" cellpadding="3" align="center" bordercolor="#ff6600">
<tbody>
<tr bordercolor="#ff9900">
<td style="border-left: #000000 1px solid; width: 100%; border-top: #000000 1px solid;" bgcolor="#ff9900">sudo nano /etc/php5/apache2/php.ini</td>
</tr>
</tbody>
</table>
<p>แก้ไขให้เป็นแบบข้างล่างนี้</p>
<p>display_errors = Off<br />
log_errors = On<br />
allow_url_fopen = Off<br />
expose_php = Off<br />
enable_dl = Off<br />
disable_functions = system, show_source, symlink, exec, dl, shell_exec, passthru, phpinfo, escapeshellarg, escapeshellcmd</p>
<p>Step 7 :</p>
<p>ขั้นตอนสุดท้าย</p>
<table style="text-align: left; width: 90%; border-collapse: collapse; vertical-align: middle; border: #000000 1px solid;" border="0" cellspacing="0" cellpadding="3" align="center" bordercolor="#ff6600">
<tbody>
<tr bordercolor="#ff9900">
<td style="border-left: #000000 1px solid; width: 100%; border-top: #000000 1px solid;" bgcolor="#ff9900">sudo /etc/init.d/apache2 restart</td>
</tr>
</tbody>
</table>
<p>Step 8 :</p>
<table style="text-align: left; width: 90%; border-collapse: collapse; vertical-align: middle; border: #000000 1px solid;" border="0" cellspacing="0" cellpadding="3" align="center" bordercolor="#ff6600">
<tbody>
<tr bordercolor="#ff9900">
<td style="border-left: #000000 1px solid; width: 100%; border-top: #000000 1px solid;" bgcolor="#ff9900">sudo nano /etc/sysctl.conf</td>
</tr>
</tbody>
</table>
<p>เอา # ออก</p>
<p>#Enable TCP SYN Cookie Protection<br />
net.ipv4.tcp_syncookies = 1</p>
<p>สั่งให้ทำงานเลย</p>
<table style="text-align: left; width: 90%; border-collapse: collapse; vertical-align: middle; border: #000000 1px solid;" border="0" cellspacing="0" cellpadding="3" align="center" bordercolor="#ff6600">
<tbody>
<tr bordercolor="#ff9900">
<td style="border-left: #000000 1px solid; width: 100%; border-top: #000000 1px solid;" bgcolor="#ff9900">sudo /sbin/sysctl -p</td>
</tr>
</tbody>
</table>
<p> </p>
<p>ที่มา:</p>
<ul>
<li><a href="http://manajung.blogspot.com/2010/03/hardening-your-apache-and-php-on-ubuntu.html">http://manajung.blogspot.com/2010/03/hardening-your-apache-and-php-on-ubuntu.htm</a></li>
<li><a href="http://secure-ubuntu-server.blogspot.com/2009/07/howto-hardening-your-apache-and-php-on_07.html">http://secure-ubuntu-server.blogspot.com/2009/07/howto-hardening-your-apache-and-php-on_07.html</a>l</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.kunawut.com/blog/?feed=rss2&amp;p=545</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>โปรแกรมเข้ารหัส source code PHP</title>
		<link>http://www.kunawut.com/blog/?p=542</link>
		<comments>http://www.kunawut.com/blog/?p=542#comments</comments>
		<pubDate>Thu, 08 Jul 2010 23:19:35 +0000</pubDate>
		<dc:creator>คุณาวุฒิ</dc:creator>
				<category><![CDATA[PHP & MySQL Programing]]></category>

		<guid isPermaLink="false">http://www.kunawut.com/blog/?p=542</guid>
		<description><![CDATA[http://www.sourceguardian.com/protect_php_scripts.html
http://www.zend.com/en/products/guard/
]]></description>
			<content:encoded><![CDATA[<p>http://www.sourceguardian.com/protect_php_scripts.html<br />
http://www.zend.com/en/products/guard/</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kunawut.com/blog/?feed=rss2&amp;p=542</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>วิธีการทำ Hiren USB Boot</title>
		<link>http://www.kunawut.com/blog/?p=539</link>
		<comments>http://www.kunawut.com/blog/?p=539#comments</comments>
		<pubDate>Wed, 07 Jul 2010 23:08:20 +0000</pubDate>
		<dc:creator>คุณาวุฒิ</dc:creator>
				<category><![CDATA[ช่างซ่อมคอมพิวเตอร์]]></category>

		<guid isPermaLink="false">http://www.kunawut.com/blog/?p=539</guid>
		<description><![CDATA[หลายครั้งที่เราต้องการที่จะทำการ Ghost เครื่องคอมพิวเตอร์ที่ไม่มี CDROM หรือมี CDROM ชนิด SATA
เมื่อ Boot ด้วย CDROM SATA หรือ USB CDROM พอเข้าสู่โปรแกรม Ghost กลับบอกว่าไม่พบ CDROM ทำให้ไม่สามารถ ghost harddisk ได้
มาดูวิธีง่ายๆในการแก้ปัญหาดังกล่าว โดยการสร้าง Hiren USB Boot แล้วทุกอย่างจะง่ายขึ้นมาทันที
(เฉพาะคอมพิวเตอร์ที่สามารถ boot ด้วย USB เท่านั้น)
ที่มา: http://www.vecthai.com/forums/index.php?topic=483.0
]]></description>
			<content:encoded><![CDATA[<p>หลายครั้งที่เราต้องการที่จะทำการ Ghost เครื่องคอมพิวเตอร์ที่ไม่มี CDROM หรือมี CDROM ชนิด SATA<br />
เมื่อ Boot ด้วย CDROM SATA หรือ USB CDROM พอเข้าสู่โปรแกรม Ghost กลับบอกว่าไม่พบ CDROM ทำให้ไม่สามารถ ghost harddisk ได้</p>
<p>มาดูวิธีง่ายๆในการแก้ปัญหาดังกล่าว โดยการสร้าง Hiren USB Boot แล้วทุกอย่างจะง่ายขึ้นมาทันที<br />
(เฉพาะคอมพิวเตอร์ที่สามารถ boot ด้วย USB เท่านั้น)</p>
<p>ที่มา: http://www.vecthai.com/forums/index.php?topic=483.0</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kunawut.com/blog/?feed=rss2&amp;p=539</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ระบบ Project Management ทำงานบนเว็บ</title>
		<link>http://www.kunawut.com/blog/?p=537</link>
		<comments>http://www.kunawut.com/blog/?p=537#comments</comments>
		<pubDate>Wed, 23 Jun 2010 01:52:21 +0000</pubDate>
		<dc:creator>คุณาวุฒิ</dc:creator>
				<category><![CDATA[เรื่องทั่วไป]]></category>

		<guid isPermaLink="false">http://www.kunawut.com/blog/?p=537</guid>
		<description><![CDATA[ระบบ Project Management ทำงานบนเว็บที่น่าสนใจ เข้าใจง่าย ราคา 1500 บาท/เดือน
http://basecamphq.com/signup
]]></description>
			<content:encoded><![CDATA[<p>ระบบ Project Management ทำงานบนเว็บที่น่าสนใจ เข้าใจง่าย ราคา 1500 บาท/เดือน</p>
<p>http://basecamphq.com/signup</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kunawut.com/blog/?feed=rss2&amp;p=537</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How To Set Up Database Replication In MySQL</title>
		<link>http://www.kunawut.com/blog/?p=532</link>
		<comments>http://www.kunawut.com/blog/?p=532#comments</comments>
		<pubDate>Tue, 23 Mar 2010 09:31:46 +0000</pubDate>
		<dc:creator>คุณาวุฒิ</dc:creator>
				<category><![CDATA[MySQL Server and Management]]></category>

		<guid isPermaLink="false">http://www.kunawut.com/blog/?p=532</guid>
		<description><![CDATA[This tutorial describes how to set up database replication in MySQL. MySQL replication allows you to have an exact copy of a database from a master server on another server (slave), and all updates to the database on the master server are immediately replicated to the database on the slave server so that both databases [...]]]></description>
			<content:encoded><![CDATA[<p>This tutorial describes how to set up database replication in MySQL. MySQL replication allows you to have an exact copy of a database from a master server on another server (slave), and all updates to the database on the master server are immediately replicated to the database on the slave server so that both databases are in sync. This is not a backup policy because an accidentally issued DELETE command will also be carried out on the slave; but replication can help protect against hardware failures though.</p>
<p>In this tutorial I will show how to replicate the database exampledb from the master with the IP address 192.168.0.100 to a slave. Both systems (master and slave) are running Debian Sarge; however, the configuration should apply to almost all distributions with little or no modification.</p>
<p>Both systems have MySQL installed, and the database exampledb with tables and data is already existing on the master, but not on the slave.</p>
<p>I want to say first that this is not the only way of setting up such a system. There are many ways of achieving this goal but this is the way I take. I do not issue any guarantee that this will work for you!</p>
<p><span id="more-532"></span><br />
1 Configure The Master<br />
First we have to edit /etc/mysql/my.cnf. We have to enable networking for MySQL, and MySQL should listen on all IP addresses, therefore we comment out these lines (if existant):</p>
<p>#skip-networking<br />
#bind-address = 127.0.0.1</p>
<p>Furthermore we have to tell MySQL for which database it should write logs (these logs are used by the slave to see what has changed on the master), which log file it should use, and we have to specify that this MySQL server is the master. We want to replicate the database exampledb, so we put the following lines into /etc/mysql/my.cnf:</p>
<p>log-bin = /var/log/mysql/mysql-bin.log<br />
binlog-do-db=exampledbserver-id=1</p>
<p>Then we restart MySQL:</p>
<p>/etc/init.d/mysql restart</p>
<p>Then we log into the MySQL database as root and create a user with replication privileges:</p>
<p>mysql -u root -p<br />
Enter password:</p>
<p>Now we are on the MySQL shell.</p>
<p>GRANT REPLICATION SLAVE ON *.* TO &#8217;slave_user&#8217;@'%&#8217; IDENTIFIED BY &#8221;;<br />
FLUSH PRIVILEGES;</p>
<p>Next (still on the MySQL shell) do this:</p>
<p>USE exampledb;<br />
FLUSH TABLES WITH READ LOCK;<br />
SHOW MASTER STATUS;</p>
<p>The last command will show something like this:</p>
<blockquote><p>+&#8212;&#8212;&#8212;&#8212;&#8212;+&#8212;&#8212;&#8212;-+&#8212;&#8212;&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;+<br />
| File | Position | Binlog_do_db | Binlog_ignore_db |<br />
+&#8212;&#8212;&#8212;&#8212;&#8212;+&#8212;&#8212;&#8212;-+&#8212;&#8212;&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;+<br />
| mysql-bin.006 | 183 | exampledb | |<br />
+&#8212;&#8212;&#8212;&#8212;&#8212;+&#8212;&#8212;&#8212;-+&#8212;&#8212;&#8212;&#8212;&#8211;+&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;+<br />
1 row in set (0.00 sec)</p></blockquote>
<p>Write down this information, we will need it later on the slave!</p>
<p>Then leave the MySQL shell:</p>
<p>quit;</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>There are two possibilities to get the existing tables and data from exampledb from the master to the slave. The first one is to make a database dump, the second one is to use the LOAD DATA FROM MASTER; command on the slave. The latter has the disadvantage the the database on the master will be locked during this operation, so if you have a large database on a high-traffic production system, this is not what you want, and I recommend to follow the first method in this case. However, the latter method is very fast, so I will describe both here.</p>
<p>If you want to follow the first method, then do this:</p>
<p>mysqldump -u root -p<br />
&#8211;opt exampledb &gt; exampledb.sql (Replace<br />
with the real password for the MySQL user root! Important: There is no space between -p and<br />
!)</p>
<p>This will create an SQL dump of exampledb in the file exampledb.sql. Transfer this file to your slave server!</p>
<p>If you want to go the LOAD DATA FROM MASTER; way then there is nothing you must do right now.</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>Finally we have to unlock the tables in exampledb:</p>
<p>mysql -u root -p<br />
Enter password:<br />
UNLOCK TABLES;<br />
quit;</p>
<p>Now the configuration on the master is finished. On to the slave&#8230;</p>
<p>2 Configure The Slave<br />
On the slave we first have to create the database exampledb:</p>
<p>mysql -u root -p<br />
Enter password:<br />
CREATE DATABASE exampledb;<br />
quit;</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>If you have made an SQL dump of exampledb on the master and have transferred it to the slave, then it is time now to import the SQL dump into our newly created exampledb on the slave:</p>
<p>mysql -u root -p<br />
exampledb &lt; /path/to/exampledb.sql (Replace<br />
with the real password for the MySQL user root! Important: There is no space between -p and<br />
!)</p>
<p>If you want to go the LOAD DATA FROM MASTER; way then there is nothing you must do right now.</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>Now we have to tell MySQL on the slave that it is the slave, that the master is 192.168.0.100, and that the master database to watch is exampledb. Therefore we add the following lines to /etc/mysql/my.cnf:</p>
<p>server-id=2master-host=192.168.0.100master-user=slave_usermaster-password=secretmaster-connect-retry=60replicate-do-db=exampledb</p>
<p>Then we restart MySQL:</p>
<p>/etc/init.d/mysql restart</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>If you have not imported the master exampledb with the help of an SQL dump, but want to go the LOAD DATA FROM MASTER; way, then it is time for you now to get the data from the master exampledb:</p>
<p>mysql -u root -p<br />
Enter password:<br />
LOAD DATA FROM MASTER;<br />
quit;</p>
<p>If you have phpMyAdmin installed on the slave you can now check if all tables/data from the master exampledb is also available on the slave exampledb.</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>Finally, we must do this:</p>
<p>mysql -u root -p<br />
Enter password:<br />
SLAVE STOP;</p>
<p>In the next command (still on the MySQL shell) you have to replace the values appropriately:</p>
<p>CHANGE MASTER TO MASTER_HOST=&#8217;192.168.0.100&#8242;, MASTER_USER=&#8217;slave_user&#8217;, MASTER_PASSWORD=&#8221;, MASTER_LOG_FILE=&#8217;mysql-bin.006&#8242;, MASTER_LOG_POS=183;</p>
<p>MASTER_HOST is the IP address or hostname of the master (in this example it is 192.168.0.100).<br />
MASTER_USER is the user we granted replication privileges on the master.<br />
MASTER_PASSWORD is the password of MASTER_USER on the master.<br />
MASTER_LOG_FILE is the file MySQL gave back when you ran SHOW MASTER STATUS; on the master.<br />
MASTER_LOG_POS is the position MySQL gave back when you ran SHOW MASTER STATUS; on the master.<br />
Now all that is left to do is start the slave. Still on the MySQL shell we run</p>
<p>START SLAVE;<br />
quit;</p>
<p>That&#8217;s it! Now whenever exampledb is updated on the master, all changes will be replicated to exampledb on the slave. Test it!</p>
<p>Refer: http://www.howtoforge.com/mysql_database_replication</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kunawut.com/blog/?feed=rss2&amp;p=532</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cisco Router password recovery 2600,3600</title>
		<link>http://www.kunawut.com/blog/?p=530</link>
		<comments>http://www.kunawut.com/blog/?p=530#comments</comments>
		<pubDate>Mon, 22 Mar 2010 13:26:28 +0000</pubDate>
		<dc:creator>คุณาวุฒิ</dc:creator>
				<category><![CDATA[Network Equipment]]></category>

		<guid isPermaLink="false">http://www.kunawut.com/blog/?p=530</guid>
		<description><![CDATA[1. Reboot router.
2. When ROMMON is loading, send break signal on console port.
3. confreg 0&#215;2142
4. reset
5. enable, copy start run
6. ***interfaces will be shut down!! make sure you &#8216;no shut&#8217; them***
7. conf t, change enable secret, line con/vty/aux passwords, usernames, etc.
8. config-register 0&#215;2102
9. ^Z, write / copy run start
10. reload, and make sure it&#8217;s happy.
]]></description>
			<content:encoded><![CDATA[<p>1. Reboot router.<br />
2. When ROMMON is loading, send break signal on console port.<br />
3. confreg 0&#215;2142<br />
4. reset<br />
5. enable, copy start run<br />
6. ***interfaces will be shut down!! make sure you &#8216;no shut&#8217; them***<br />
7. conf t, change enable secret, line con/vty/aux passwords, usernames, etc.<br />
8. config-register 0&#215;2102<br />
9. ^Z, write / copy run start<br />
10. reload, and make sure it&#8217;s happy.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kunawut.com/blog/?feed=rss2&amp;p=530</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>การ Create VLAN ใน Xen-Server 5.5</title>
		<link>http://www.kunawut.com/blog/?p=526</link>
		<comments>http://www.kunawut.com/blog/?p=526#comments</comments>
		<pubDate>Mon, 01 Mar 2010 04:08:42 +0000</pubDate>
		<dc:creator>คุณาวุฒิ</dc:creator>
				<category><![CDATA[Xenserver]]></category>

		<guid isPermaLink="false">http://www.kunawut.com/blog/?p=526</guid>
		<description><![CDATA[ต้องทำผ่าน Command Line นะครับ
ตามรายละเอียดนี้ ต้องการดูทั้งหมดคลิ๊กที่ ที่มา นะครับ
4.2.3. Creating VLANs
For servers in a resource pool, you can use the pool-vlan-create command. This command creates the VLAN and automatically creates and plugs in the required PIFs on the hosts in the pool. See Section 8.4.22.2, “pool-vlan-create” for more information.
To connect a network to an external VLAN using [...]]]></description>
			<content:encoded><![CDATA[<p>ต้องทำผ่าน Command Line นะครับ<br />
ตามรายละเอียดนี้ ต้องการดูทั้งหมดคลิ๊กที่ ที่มา นะครับ</p>
<blockquote><p>4.2.3. Creating VLANs</p>
<p>For servers in a resource pool, you can use the pool-vlan-create command. This command creates the VLAN and automatically creates and plugs in the required PIFs on the hosts in the pool. See Section 8.4.22.2, “pool-vlan-create” for more information.</p>
<p>To connect a network to an external VLAN using the CLI</p>
<p>   1. Open the XenServer host text console.<br />
   2. Create a new network for use with the VLAN. The UUID of the new network is returned:</p>
<p>      xe network-create name-label=network5</p>
<p>   3. Use the pif-list command to find the UUID of the PIF corresponding to the physical NIC supporting the desired VLAN tag. The UUIDs and device names of all PIFs are returned, including any existing VLANs:</p>
<p>      xe pif-list</p>
<p>   4. Create a VLAN object specifying the desired physical PIF and VLAN tag on all VMs to be connected to the new VLAN. A new PIF will be created and plugged into the specified network. The UUID of the new PIF object is returned.</p>
<p>      xe vlan-create network-uuid=<network_uuid> pif-uuid=
<pif_uuid> vlan=5</p>
<p>   5. Attach VM VIFs to the new network. See Section 4.2.1, “Creating networks in a standalone server” for more details.</p></blockquote>
<p>ที่มา: <a href="http://docs.vmd.citrix.com/XenServer/5.5.0/1.0/en_gb/reference.html#networking-standalone_host_config-vlans">http://docs.vmd.citrix.com/XenServer/5.5.0/1.0/en_gb/reference.html#networking-standalone_host_config-vlans</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.kunawut.com/blog/?feed=rss2&amp;p=526</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
