<?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>icez network &#187; dns</title>
	<atom:link href="http://www.icez.net/blog/tags/dns/feed" rel="self" type="application/rss+xml" />
	<link>http://www.icez.net/blog</link>
	<description>Technical Blog by icez network</description>
	<lastBuildDate>Mon, 30 Jan 2012 17:31:37 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>0100 &#124; บริการ Public DNS ช่วยให้เข้าเว็บได้เร็วขึ้นจริงหรือ?</title>
		<link>http://www.icez.net/blog/686/did-public-dns-make-web-browsing-faster</link>
		<comments>http://www.icez.net/blog/686/did-public-dns-make-web-browsing-faster#comments</comments>
		<pubDate>Wed, 16 Jun 2010 13:31:27 +0000</pubDate>
		<dc:creator>icez</dc:creator>
				<category><![CDATA[IP Network]]></category>
		<category><![CDATA[cdn]]></category>
		<category><![CDATA[dns]]></category>
		<category><![CDATA[internet]]></category>

		<guid isPermaLink="false">http://www.icez.net/blog/?p=686</guid>
		<description><![CDATA[บทความนี้เรียบเรียงมาจากต้นฉบับตามนี้ครับ http://www.neowin.net/news/public-dns-providers-do-they-actually-improve-your-experience . บริการ Public DNS จำพวก OpenDNS และ Google Public DNS ได้รับความสนใจอย่างมากเนื่องด้วยการโฆษณาว่าสามารถเพิ่มความเร็วในการเข้าชมเว็บไซต์ได้มากขึ้นเพียงแค่เปลี่ยนการตั้งค่า DNS resolver บนเครื่องคอมพิวเตอร์ของคุณเท่านั้น สาเหตุหนึ่งก็เนื่องมาจาก ISP หลายๆ รายไม่ได้ลงทุนในการทำโครงสร้าง DNS ให้ดี ซึ่งทำให้ความเร็วในการตอบสนองช้าโดยเฉพาะช่วงเวลาเร่งด่วน จึงได้มีบริการ Public DNS ที่สร้างเพื่อรองรับปริมาณกาการใช้งาน DNS มหาศาลเหล่านี้&#8230; แต่มันดีขึ้นจริงๆ หรือ? ก่อนอื่น เราต้องเข้าใจก่อนว่า ISP ที่เราใช้บริการอยู่ จะมี DNS resolver ที่ติดตั้งอยู่ภายในเครือข่ายเดียวกับที่เราต่อเน็ตเข้าไป ส่วนการใช้บริการจากภายนอกอย่างเช่น OpenDNS หรือ Google DNS service นั้นจะเป็นการเชื่อมต่อออกภายนอกเครือข่าย ซึ่งทำให้การติดต่อ DNS เหล่านั้นต้องเดินทางไกลขึ้นเพื่อที่จะไปให้ถึง Server (โดยเฉพาะการใช้งานจากประเทศไทย ที่ไม่ว่า Google DNS หรือ [...]]]></description>
			<content:encoded><![CDATA[<p>บทความนี้เรียบเรียงมาจากต้นฉบับตามนี้ครับ<br />
<a href="http://www.neowin.net/news/public-dns-providers-do-they-actually-improve-your-experience">http://www.neowin.net/news/public-dns-providers-do-they-actually-improve-your-experience</a></p>
<p>.</p>
<p>บริการ Public DNS จำพวก <a href="http://www.blognone.com/node/2625">OpenDNS</a> และ <a href="http://www.blognone.com/node/14139/">Google Public DNS</a> ได้รับความสนใจอย่างมากเนื่องด้วยการโฆษณาว่าสามารถเพิ่มความเร็วในการเข้าชมเว็บไซต์ได้มากขึ้นเพียงแค่เปลี่ยนการตั้งค่า DNS resolver บนเครื่องคอมพิวเตอร์ของคุณเท่านั้น สาเหตุหนึ่งก็เนื่องมาจาก ISP หลายๆ รายไม่ได้ลงทุนในการทำโครงสร้าง DNS ให้ดี ซึ่งทำให้ความเร็วในการตอบสนองช้าโดยเฉพาะช่วงเวลาเร่งด่วน จึงได้มีบริการ Public DNS ที่สร้างเพื่อรองรับปริมาณกาการใช้งาน DNS มหาศาลเหล่านี้&#8230; แต่มันดีขึ้นจริงๆ หรือ?</p>
<p>ก่อนอื่น เราต้องเข้าใจก่อนว่า ISP ที่เราใช้บริการอยู่ จะมี DNS resolver ที่ติดตั้งอยู่ภายในเครือข่ายเดียวกับที่เราต่อเน็ตเข้าไป ส่วนการใช้บริการจากภายนอกอย่างเช่น OpenDNS หรือ Google DNS service นั้นจะเป็นการเชื่อมต่อออกภายนอกเครือข่าย ซึ่งทำให้การติดต่อ DNS เหล่านั้นต้องเดินทางไกลขึ้นเพื่อที่จะไปให้ถึง Server (โดยเฉพาะการใช้งานจากประเทศไทย ที่ไม่ว่า Google DNS หรือ OpenDNS ล้วนแล้วแต่อยู่ต่างประเทศทั้งสิ้น : เพิ่มเติมโดยผู้แปล) และอย่าลืมว่า การเดินทางที่ไกลขึ้น เท่ากับว่าต้องใช้เวลามากขึ้นกว่าการรับส่งข้อมูลจะสมบูรณ์</p>
<p>* เพิ่มเติม: การใช้งาน Google DNS ในประเทศไทย จะติดต่อไปยัง server ของ Google ที่สิงคโปร์ ส่วน OpenDNS นั้นต้องติดต่อไปไกลถึงอเมริกาเลยทีเดียว</p>
<p>แล้ว DNS มีผลต่อการเข้าชมเว็บไซต์มากขนาดไหน? คำตอบคือ &#8220;น้อยมาก&#8221; เพราะการเข้าชมเว็บไซต์แต่ละครั้ง ใน &#8220;ครั้งแรก&#8221; ก่อนการเชื่อมต่อ เครื่องคอมพิวเตอร์จะสอบถามข้อมูล IP ของเว็บไซต์ไปยัง DNS resolver ตามที่ได้ระบุไว้ จากนั้นจึง &#8220;เก็บ&#8221; ข้อมูลดังกล่าวไว้ภายในหน่วยความจำตลอดการเข้าใช้งาน หรือจนกว่าข้อมูลจะหมดอายุไปตามที่ได้ระบุใน DNS ของแต่ละ domain เอง (ในค่า TTL) ดังนั้นถึงแม้ว่าการที่เราใช้ DNS resolver ที่เร็วกว่า ก็ไม่ได้หมายความว่าเราจะสามารถโหลดข้อมูลเว็บไซต์ได้เร็วกว่าแต่อย่างใด ในทางปฏิบัติจริงๆ แล้ว มันสามารถช่วยได้เพียงเล็กน้อย &#8230; ซึ่งวัดกันในหน่วย มิลลิวินาที (1/1000 วินาที) ด้วยซ้ำไป</p>
<p>แล้วทีนี้? ปัจจุบันเนื่องจากปริมาณข้อมูลที่ถูกสร้างจากผู้ใช้ (user-generated content) มีมากขึ้นเรื่อยๆ ประกอบกับการขยายตัวของบริการซอฟต์แวร์ (software-as-a-service) ทำให้หลายๆ บริษัทมองมาที่ระบบ CDN (Content Delivery Networks) ที่ช่วยกระจายข้อมูลให้ผู้ใช้งาน โดยหลักการง่ายๆ ก็คือ ระบบ CDN จะกระจายข้อมูลเหมือนๆ กันลงไปที่แต่ละ node ทั่วโลก แล้วเมื่อผู้ใช้ต้องการเรียกใช้งาน ระบบ CDN ก็จะส่งข้อมูลไปให้จาก node ที่อยู่ &#8220;ใกล้ผู้ใช้&#8221; มากที่สุด ทำให้ผู้ใช้สามารถเรียกข้อมูลได้เร็วขึ้นมาก รวมถึงการลดปริมาณการใช้งาน bandwidth ของเจ้าของเว็บไซต์อีกด้วย</p>
<p>แล้ว DNS มาเกี่ยวอะไรด้วย? วิธีตรวจสอบที่อยู่ว่า ผู้ใช้ร้องขอการใช้งานจากส่วนไหนของโลกของ CDN ส่วนใหญ่ จะใช้วิธีตรวจสอบจากที่มาของการสอบถามข้อมูล IP ผ่าน DNS resolver &#8230; ซึ่งการสอบถาม IP นี้ browser จะสอบถามไปยัง DNS resolver ตามที่ตั้งค่าไว้ จากนั้น DNS resolver ดังกล่าวจึงไปร้องขอข้อมูล IP จาก Nameserver ที่รับการใช้งานของ domain นั้นๆ อีกที (เรียกว่า Authoritive NS) แล้ว Nameserver ก็จะตรวจสอบที่มาของการร้องขอข้อมูลนั้น แล้วส่ง IP ที่อยู่พื้นที่ใกล้เคียงที่สุดไปให้</p>
<p>ปัญหามันเกิดขึ้นเมื่อ&#8230; คุณไม่ได้ใช้ DNS resolver ของ ISP ที่อยู่ใกล้เคียงคุณมากที่สุด นั่นจะทำให้คุณได้รับ IP ของ CDN ที่อยู่ใกล้เคียง DNS resolver แทน อย่างเช่นหากคุณใช้บริการอย่าง OpenDNS ไปร้องขอ IP ของเว็บไซต์ &#8230; คุณจะได้รับ IP ของประเทศอเมริกากลับมา ทำให้การใช้งานเป็นไปอย่างล่าช้ามากกว่าเดิมมาก ซึ่งเป็นผลให้คุณเข้าถึงข้อมูลที่อยู่บนบริการ CDN ได้ช้าลงมากๆ ด้วย และอย่าลืมว่า DNS request ใช้ปริมาณข้อมูลเพียงไม่กี่ byte เท่านั้น แต่การรับส่งข้อมูลของบริการ CDN นั้นต่างกันอย่างมหาศาล เนื่องจากข้อมูลส่วนใหญ่ของ CDN จะเป็นรูปภาพและวีดีโอ ซึ่งขนาดใหญ่กว่ากันมากขึ้นอย่างสังเกตได้ชัดเจนมากๆ เลยทีเดียว</p>
<p>ถึงแม้ว่า OpenDNS จะมีบริการเสริมอย่างเช่นการกรองข้อมูล และป้องกันฟิชชิ่ง (phishing) ด้วยก็ตาม แต่ถ้าเป้าหมายหลักของคุณคือการทำให้การเข้าเว็บเร็วขึ้น ดังนั้นควรเลี่ยงบริการ public DNS เหล่านี้ โดยเฉพาะหากเว็บไซต์ที่คุณเข้าใช้บริการบ่อยๆ มีการใช้ CDN ด้วยอย่างเช่น Facebook และ Youtube</p>
<p>.</p>
<p>.</p>
<p>ด้านล่างนี่ผลการทดสอบครับ<br />
ต้นทางทดสอบจาก CAT-IDC กสท.บางรักครับ</p>
<p>Google Public DNS<br />
Answer = 58.27.22.0/24 => Malaysia<br />
Time = 42ms</p>
<blockquote><p>;; QUESTION SECTION:<br />
;static.ak.fbcdn.net.           IN      A</p>
<p>;; ANSWER SECTION:<br />
static.ak.fbcdn.net.    5226    IN      CNAME   static.ak.facebook.com.edgesuite.net.<br />
static.ak.facebook.com.edgesuite.net. 19130 IN CNAME a749.g.akamai.net.<br />
a749.g.akamai.net.      14      IN      A       58.27.22.26<br />
a749.g.akamai.net.      14      IN      A       58.27.22.91<br />
a749.g.akamai.net.      14      IN      A       58.27.22.65<br />
a749.g.akamai.net.      14      IN      A       58.27.22.9<br />
a749.g.akamai.net.      14      IN      A       58.27.22.32<br />
a749.g.akamai.net.      14      IN      A       58.27.22.42</p>
<p>;; Query time: 42 msec<br />
;; SERVER: 8.8.8.8#53(8.8.8.8)<br />
;; WHEN: Wed Jun 16 19:59:15 2010<br />
;; MSG SIZE  rcvd: 208</p></blockquote>
<p>OpenDNS<br />
Answer = 208.50.77.0/24 => USA<br />
Time = 236ms</p>
<blockquote><p>;; QUESTION SECTION:<br />
;static.ak.fbcdn.net.           IN      A</p>
<p>;; ANSWER SECTION:<br />
static.ak.fbcdn.net.    6302    IN      CNAME   static.ak.facebook.com.edgesuite.net.<br />
static.ak.facebook.com.edgesuite.net. 20706 IN CNAME a749.g.akamai.net.<br />
a749.g.akamai.net.      10      IN      A       208.50.77.113<br />
a749.g.akamai.net.      10      IN      A       208.50.77.72<br />
a749.g.akamai.net.      10      IN      A       208.50.77.81<br />
a749.g.akamai.net.      10      IN      A       208.50.77.96</p>
<p>;; Query time: 236 msec<br />
;; SERVER: 208.67.222.222#53(208.67.222.222)<br />
;; WHEN: Wed Jun 16 19:59:33 2010<br />
;; MSG SIZE  rcvd: 176</p></blockquote>
<p>THZHosting Public DNS (node ที่ csloxinfo cbw idc)<br />
Answer = 203.146.247.0/24 => Thailand (CSLoxinfo)<br />
Time = 4ms</p>
<blockquote><p>;; QUESTION SECTION:<br />
;static.ak.fbcdn.net.           IN      A</p>
<p>;; ANSWER SECTION:<br />
static.ak.fbcdn.net.    7121    IN      CNAME   static.ak.facebook.com.edgesuite.net.<br />
static.ak.facebook.com.edgesuite.net. 21522 IN CNAME a749.g.akamai.net.<br />
a749.g.akamai.net.      20      IN      A       203.146.247.38<br />
a749.g.akamai.net.      20      IN      A       203.146.247.37</p>
<p>;; Query time: 4 msec<br />
;; SERVER: 203.146.215.116#53(203.146.215.116)<br />
;; WHEN: Wed Jun 16 19:59:58 2010<br />
;; MSG SIZE  rcvd: 306
</p></blockquote>
<p>CAT ISP DNS Server<br />
Answer = 61.19.12.0/24 => Thailand (CAT IDC)<br />
Time = 0ms</p>
<blockquote><p>;; QUESTION SECTION:<br />
;static.ak.fbcdn.net.           IN      A</p>
<p>;; ANSWER SECTION:<br />
static.ak.fbcdn.net.    3800    IN      CNAME   static.ak.facebook.com.edgesuite.net.<br />
static.ak.facebook.com.edgesuite.net. 18200 IN CNAME a749.g.akamai.net.<br />
a749.g.akamai.net.      20      IN      A       61.19.12.41<br />
a749.g.akamai.net.      20      IN      A       61.19.12.72</p>
<p>;; Query time: 0 msec<br />
;; SERVER: 61.19.245.245#53(61.19.245.245)<br />
;; WHEN: Wed Jun 16 20:27:49 2010<br />
;; MSG SIZE  rcvd: 150</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.icez.net/blog/686/did-public-dns-make-web-browsing-faster/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>0083 &#124; GeoDNS for BIND 9.2+</title>
		<link>http://www.icez.net/blog/373/geodns-for-bind-9-2</link>
		<comments>http://www.icez.net/blog/373/geodns-for-bind-9-2#comments</comments>
		<pubDate>Wed, 04 Nov 2009 10:44:17 +0000</pubDate>
		<dc:creator>icez</dc:creator>
				<category><![CDATA[IP Network]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[bind]]></category>
		<category><![CDATA[cdn]]></category>
		<category><![CDATA[dns]]></category>
		<category><![CDATA[geodns]]></category>

		<guid isPermaLink="false">http://www.icez.net/blog/?p=373</guid>
		<description><![CDATA[เอาไว้ทำ CDN ได้ครับ ให้ dns lookup ออกมาตามประเทศ shell script (จำที่มาไม่ได้ ขออภัยด้วยครับ) #!/bin/bash cd /tmp /bin/rm -f GeoIPCountryCSV.zip wget -T 5 -t 1 http://geolite.maxmind.com/download/geoip/database/GeoIPCountryCSV.zip unzip GeoIPCountryCSV.zip &#124;&#124; exit 1 &#160; echo -n &#34;Creating CNM (Country,Net/Mask) CSV file...&#34; awk -F \&#34; 'function s(c,b,e,l,m,n) {l = log(e-b+1)/log(2); m = 2^32-2^int(l); n = and(m,e); if (n == and(m,b)) {printf [...]]]></description>
			<content:encoded><![CDATA[<p>เอาไว้ทำ CDN ได้ครับ ให้ dns lookup ออกมาตามประเทศ</p>
<p>shell script (จำที่มาไม่ได้ ขออภัยด้วยครับ)</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">#!/bin/bash</span>
<span style="color: #7a0874; font-weight: bold;">cd</span> <span style="color: #000000; font-weight: bold;">/</span>tmp
<span style="color: #000000; font-weight: bold;">/</span>bin<span style="color: #000000; font-weight: bold;">/</span><span style="color: #c20cb9; font-weight: bold;">rm</span> <span style="color: #660033;">-f</span> GeoIPCountryCSV.zip
<span style="color: #c20cb9; font-weight: bold;">wget</span> <span style="color: #660033;">-T</span> <span style="color: #000000;">5</span> <span style="color: #660033;">-t</span> <span style="color: #000000;">1</span> http:<span style="color: #000000; font-weight: bold;">//</span>geolite.maxmind.com<span style="color: #000000; font-weight: bold;">/</span>download<span style="color: #000000; font-weight: bold;">/</span>geoip<span style="color: #000000; font-weight: bold;">/</span>database<span style="color: #000000; font-weight: bold;">/</span>GeoIPCountryCSV.zip
<span style="color: #c20cb9; font-weight: bold;">unzip</span> GeoIPCountryCSV.zip <span style="color: #000000; font-weight: bold;">||</span> <span style="color: #7a0874; font-weight: bold;">exit</span> <span style="color: #000000;">1</span>
&nbsp;
<span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #660033;">-n</span> <span style="color: #ff0000;">&quot;Creating CNM (Country,Net/Mask) CSV file...&quot;</span>
<span style="color: #c20cb9; font-weight: bold;">awk</span> <span style="color: #660033;">-F</span> <span style="color: #000000; font-weight: bold;">\&quot;</span> <span style="color: #ff0000;">'function s(c,b,e,l,m,n) {l = log(e-b+1)/log(2); m = 2^32-2^int(l); n = and(m,e); if (n == and(m,b)) {printf &quot;%s,%u.%u.%u.%u/%u\n&quot;,c,b/2^24%256,b/2^16%256,b/2^8%256,b%256,32-l} else {s(c,b,n-1); s(c,n,e)}} s($10,$6,$8)'</span> GeoIPCountryWhois.csv <span style="color: #000000; font-weight: bold;">&gt;</span> cnm.csv
<span style="color: #c20cb9; font-weight: bold;">rm</span> <span style="color: #660033;">-f</span> GeoIPCountryWhois.csv
<span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #660033;">-ne</span> <span style="color: #ff0000;">&quot;DONE<span style="color: #000099; font-weight: bold;">\n</span>Generating BIND GeoIP.acl file...&quot;</span>
&nbsp;
<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #000000; font-weight: bold;">for</span> c <span style="color: #000000; font-weight: bold;">in</span> $<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #c20cb9; font-weight: bold;">awk</span> <span style="color: #660033;">-F</span> , <span style="color: #ff0000;">'{print $1}'</span> cnm.csv <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">sort</span> -u<span style="color: #7a0874; font-weight: bold;">&#41;</span>
<span style="color: #000000; font-weight: bold;">do</span>
  <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;acl <span style="color: #000099; font-weight: bold;">\&quot;</span><span style="color: #007800;">$c</span><span style="color: #000099; font-weight: bold;">\&quot;</span> {&quot;</span>
  <span style="color: #c20cb9; font-weight: bold;">grep</span> <span style="color: #ff0000;">&quot;^<span style="color: #007800;">$c</span>,&quot;</span> cnm.csv <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">awk</span> <span style="color: #660033;">-F</span> , <span style="color: #ff0000;">'{print &quot;\t&quot;$2&quot;;&quot;}'</span>
  <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #660033;">-e</span> <span style="color: #ff0000;">&quot;};<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span>
<span style="color: #000000; font-weight: bold;">done</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #000000; font-weight: bold;">&gt;</span> <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>named.GeoIP.acl
&nbsp;
<span style="color: #c20cb9; font-weight: bold;">rm</span> <span style="color: #660033;">-f</span> cnm.csv
<span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;DONE&quot;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>init.d<span style="color: #000000; font-weight: bold;">/</span>named reload
&nbsp;
<span style="color: #7a0874; font-weight: bold;">exit</span> <span style="color: #000000;">0</span></pre></div></div>

<p>แล้วไปแก้ named.conf</p>

<div class="wp_syntax"><div class="code"><pre class="apache" style="font-family:monospace;"><span style="color: #00007f;">include</span> <span style="color: #7f007f;">&quot;/etc/named.GeoIP.acl&quot;</span>;
view <span style="color: #7f007f;">&quot;thailand&quot;</span> {
    match-clients { TH; };
        match-clients { TH; };
        zone <span style="color: #7f007f;">&quot;upic.me&quot;</span> {
                type master;
                file <span style="color: #7f007f;">&quot;master/th.db.upic.me&quot;</span>;
        };
}
view <span style="color: #7f007f;">&quot;inter&quot;</span> {
        match-clients { any; };
        zone <span style="color: #7f007f;">&quot;upic.me&quot;</span> {
                type master;
                file <span style="color: #7f007f;">&quot;master/all.db.upic.me&quot;</span>;
        };
};</pre></div></div>

<p>อยากได้ประเทศไหนก็ลองดู code ในไฟล์ /etc/named.GeoIP.acl ละกันครับ<br />
ส่วน&#8230; script ด้านบน<br />
เซฟแล้วเอาใส่ใน cron ด้วยเลยจะดีมาก รันสัปดาห์ละครั้ง</p>
]]></content:encoded>
			<wfw:commentRss>http://www.icez.net/blog/373/geodns-for-bind-9-2/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>0027 &#124; ปัญหาโลกแตกกับ DNS</title>
		<link>http://www.icez.net/blog/32/%e0%b8%9b%e0%b8%b1%e0%b8%8d%e0%b8%ab%e0%b8%b2%e0%b9%82%e0%b8%a5%e0%b8%81%e0%b9%81%e0%b8%95%e0%b8%81%e0%b8%81%e0%b8%b1%e0%b8%9a-dns</link>
		<comments>http://www.icez.net/blog/32/%e0%b8%9b%e0%b8%b1%e0%b8%8d%e0%b8%ab%e0%b8%b2%e0%b9%82%e0%b8%a5%e0%b8%81%e0%b9%81%e0%b8%95%e0%b8%81%e0%b8%81%e0%b8%b1%e0%b8%9a-dns#comments</comments>
		<pubDate>Thu, 24 Jul 2008 05:02:17 +0000</pubDate>
		<dc:creator>icez</dc:creator>
				<category><![CDATA[IP Network]]></category>
		<category><![CDATA[dns]]></category>

		<guid isPermaLink="false">http://www.icez.net/blog/?p=32</guid>
		<description><![CDATA[ว่าไปก็เห็นจะโลกแตกจริงๆ แฮะ กับปัญหาล้านแปด แต่ดั๊นมาเซตผิดอยู่ที่เดียวอะไรอย่างนี้ เลยกลายเป็น lookup ไม่ออกมั่ง ออกแต่ ip มั่วมั่ง อะไรพวกนี้บ่อยไปครับ ก่อนอื่นก็ต้องมาไล่กันที่ระบบ Root DNS ก่อน Tracing to icez.net[a] via I.ROOT-SERVERS.NET, maximum of 1 retries I.ROOT-SERVERS.NET (192.36.148.17) &#124;\___ I.GTLD-SERVERS.net [net] (192.43.172.30) &#124;     &#124;\___ ns6.thzhost.com [icez.net] (203.146.170.140) Got authoritative answer &#124;      \___ ns2.thzhost.com [icez.net] (203.146.129.182) Got authoritative answer &#8230;.. &#124;\___ K.GTLD-SERVERS.net [net] (192.52.178.30) &#124;     &#124;\___ ns6.thzhost.com [icez.net] (203.146.170.140) (cached) &#124;      \___ ns2.thzhost.com [icez.net] (203.146.129.182) (cached) \___ J.GTLD-SERVERS.net [net] (192.48.79.30) &#124;\___ ns6.thzhost.com [icez.net] (203.146.170.140) (cached) \___ ns2.thzhost.com [icez.net] (203.146.129.182) (cached) ns2.thzhost.com (203.146.129.182)       icez.net -&#62; 203.146.129.182 ns6.thzhost.com (203.146.170.140)       icez.net -&#62; 203.146.129.182 นี่แหละครับ วิธี lookup ของระบบ DNS ไอ้เจ้า I.ROOT-SERVERS.NET นี่เป็น server ของ ICANN ครับ ทำหน้าที่รองรับ DNS request ของระดับ TLD คือเป็น authoritive zone ของ TLD ทุกอัน หากเกิด TLD [...]]]></description>
			<content:encoded><![CDATA[<p>ว่าไปก็เห็นจะโลกแตกจริงๆ แฮะ<br />
กับปัญหาล้านแปด แต่ดั๊นมาเซตผิดอยู่ที่เดียวอะไรอย่างนี้<br />
เลยกลายเป็น lookup ไม่ออกมั่ง ออกแต่ ip มั่วมั่ง อะไรพวกนี้บ่อยไปครับ</p>
<p>ก่อนอื่นก็ต้องมาไล่กันที่ระบบ Root DNS ก่อน</p>
<blockquote style="font-family: 'Courier New';"><p><span style="color: black;">Tracing to icez.net[a] via <strong><span style="color: darkgreen;">I.ROOT-SERVERS.NET</span></strong>, maximum of 1 retries</span><br />
<span style="color: darkgreen;"><strong>I.ROOT-SERVERS.NET</strong> (192.36.148.17)</span><br />
<span style="color: black;"> |\___ I.GTLD-SERVERS.net [net] (192.43.172.30)</span><br />
<span style="color: blue;"> |     |\___ ns6.thzhost.com [icez.net] (203.146.170.140) Got authoritative answer</span><br />
<span style="color: blue;"> |      \___ ns2.thzhost.com [icez.net] (203.146.129.182) Got authoritative answer</span><br />
<span style="color: black;">&#8230;..<br />
</span><span style="color: black;">|\___ K.GTLD-SERVERS.net [net] (192.52.178.30)</span><br />
<span style="color: green;"> |     |\___ ns6.thzhost.com [icez.net] (203.146.170.140) (cached)</span><br />
<span style="color: green;"> |      \___ ns2.thzhost.com [icez.net] (203.146.129.182) (cached)</span><br />
<span style="color: black;"> \___ J.GTLD-SERVERS.net [net] (192.48.79.30)</span><br />
<span style="color: green;"> |\___ ns6.thzhost.com [icez.net] (203.146.170.140) (cached)</span><br />
<span style="color: green;"> \___ ns2.thzhost.com [icez.net] (203.146.129.182) (cached)</span></p>
<p><span style="color: black;">ns2.thzhost.com (203.146.129.182)       icez.net -&gt; 203.146.129.182</span><br />
<span style="color: black;">ns6.thzhost.com (203.146.170.140)       icez.net -&gt; 203.146.129.182</span></p></blockquote>
<p>นี่แหละครับ วิธี lookup ของระบบ DNS<br />
ไอ้เจ้า I.ROOT-SERVERS.NET นี่เป็น server ของ ICANN ครับ<br />
ทำหน้าที่รองรับ DNS request ของระดับ TLD<br />
คือเป็น authoritive zone ของ TLD ทุกอัน<br />
หากเกิด TLD ใหม่ขึ้นมาก็มาถามที่นี่ได้ครับว่ามันชี้ไปที่ไหนต่อ<br />
จริงๆ ROOT SERVERS นี่มีเยอะครับ แต่เผอิญว่า I.ROOT-SERVERS.NET มันอยู่ในไทย (ที่ กสท) ก็เลยใช้ตัวนี้ซะเลย</p>
<p>ลำดับต่อมา พอได้ DNS ของ TLD มาแล้ว ก็ไปถามต่อว่า domain เราอยู่ DNS ไหน<br />
(จริงๆ มันถามแค่ที่เดียวนะครับ นี่พอดีใช้ tool ช่วยนิดหน่อย มันเลยขึ้นมาหมดเลย)<br />
อย่างกรณี .com .net พวกนี้จะมี GTLD-SERVERS.NET ของ verisign เป็นผู้ดูแล<br />
ของไทยก็เป็น THNIC ดูแลอยู่ อะไรประมาณนี้แหละครับ</p>
<p>ทีนี้ เวลาได้ &#8220;ชื่อ&#8221; ของ nameserver มาแล้วเนี่ย เซิฟเวอร์มันจะบอก &#8220;IP&#8221; มาให้ด้วยเลย<br />
ตามที่เราได้ลงทะเบียน nameserver ไว้นั่นแหละครับ<br />
นั่นหมายความว่า ไม่ใช่ว่าอยู่ดีๆ เราจะตั้ง nameserver ทั่วไปได้เลย<br />
ยังไงก็ต้องลงทะเบียนกับผู้ให้บริการจดโดเมนก่อน<br />
ถ้าเอา &#8220;ชื่อ&#8221; ของ nameserver ไป lookup ดูมันก็จะได้อย่างนี้ครับ</p>
<blockquote style="font-family: 'Courier New';"><p><span style="color: black;">Tracing to ns2.thzhost.com[a] via I.ROOT-SERVERS.NET, maximum of 1 retries</span><br />
<span style="color: black;">I.ROOT-SERVERS.NET (192.36.148.17)</span><br />
<span style="color: black;"> |\___ F.GTLD-SERVERS.NET [com] (192.35.51.30) Got answer</span><br />
<span style="color: blue;"> |     |\___ ns6.thzhost.com [thzhost.com] (203.146.170.140) Got authoritative answer</span><br />
<span style="color: blue;"> |      \___ ns2.thzhost.com [thzhost.com] (203.146.129.182) Got authoritative answer</span><br />
<span style="color: black;"> |\___ E.GTLD-SERVERS.NET [com] (192.12.94.30) Got answer</span><br />
<span style="color: green;"> |     |\___ ns6.thzhost.com [thzhost.com] (203.146.170.140) (cached)</span><br />
<span style="color: green;"> |      \___ ns2.thzhost.com [thzhost.com] (203.146.129.182) (cached)</span><br />
<span style="color: black;"> </span><span style="color: black;">&#8230;&#8230;<br />
|\___ I.GTLD-SERVERS.NET [com] (192.43.172.30) Got answer</span><br />
<span style="color: green;"> |     |\___ ns6.thzhost.com [thzhost.com] (203.146.170.140) (cached)</span><br />
<span style="color: green;"> |      \___ ns2.thzhost.com [thzhost.com] (203.146.129.182) (cached)</span><br />
<span style="color: black;"> |\___ H.GTLD-SERVERS.NET [com] (192.54.112.30) Got answer</span><br />
<span style="color: green;"> |     |\___ ns6.thzhost.com [thzhost.com] (203.146.170.140) (cached)</span><br />
<span style="color: green;"> |      \___ ns2.thzhost.com [thzhost.com] (203.146.129.182) (cached)</span><br />
<span style="color: red;"> \___ G.GTLD-SERVERS.NET [com] (192.42.93.30) *</span></p>
<p><span style="color: black;">H.GTLD-SERVERS.NET (192.54.112.30)      ns2.thzhost.com -&gt; 203.146.129.182</span><br />
<span style="color: black;">I.GTLD-SERVERS.NET (192.43.172.30)      ns2.thzhost.com -&gt; 203.146.129.182</span><br />
<span style="color: black;">K.GTLD-SERVERS.NET (192.52.178.30)      ns2.thzhost.com -&gt; 203.146.129.182</span><br />
<span style="color: black;">M.GTLD-SERVERS.NET (192.55.83.30)       ns2.thzhost.com -&gt; 203.146.129.182</span><br />
<span style="color: black;">A.GTLD-SERVERS.NET (192.5.6.30)         ns2.thzhost.com -&gt; 203.146.129.182</span><br />
<span style="color: black;">D.GTLD-SERVERS.NET (192.31.80.30)       ns2.thzhost.com -&gt; 203.146.129.182</span><br />
<span style="color: black;">E.GTLD-SERVERS.NET (192.12.94.30)       ns2.thzhost.com -&gt; 203.146.129.182</span><br />
<span style="color: darkgreen;">ns2.thzhost.com (203.146.129.182)       ns2.thzhost.com -&gt; 203.146.129.182</span><span style="color: darkgreen;"><br />
</span> <span style="color: darkgreen;">ns6.thzhost.com (203.146.170.140)       ns2.thzhost.com -&gt; 203.146.129.182</span><span style="color: darkgreen;"><br />
</span> <span style="color: black;">F.GTLD-SERVERS.NET (192.35.51.30)       ns2.thzhost.com -&gt; 203.146.129.182</span></p></blockquote>
<p>เห็นมั้ยครับว่า พอลงทะเบียน nameserver แล้ว<br />
ไอ้ GTLD SERVERS แทนที่จะตอบว่า domain นี้มี dns อะไร<br />
มันก็เลยตอบพ่วง IP มาให้ด้วยเลย</p>
<p>ตรงจุดนี้คือ<strong>จุดที่ผิดพลาดกันอันดับแรกๆ</strong> เลยครับ<br />
ก็คือ สมมติ domain icez.net ชี้ไปที่ ns2.thzhost.com กับ ns6.thzhost.com<br />
แต่ใน domain thzhost.com ไม่มี record ของ ns2.thzhost.com กับ ns6.thzhost.com<br />
ก็อาจทำให้ไม่สามารถ lookup ได้ เพราะ dns บางตัวจะไม่เอา ip มาจาก gtld-servers คือจะไป lookup หาเองตรงๆ<br />
แล้วมันหา ip ของ nameserver ไม่เจอ <strong>หรือ IP ไม่ตรงกันกับที่ลงทะเบียนไว้</strong> ก็เน่าครับ</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<p>มากันที่<strong>จุดที่สอง:</strong> ว่าด้วย &#8220;NS record&#8221;<br />
เหมือนจะง่ายครับ<br />
แค่ชี้ใน domain ให้ตรงกับที่ lookup ขึ้นมาได้<br />
อย่างของ icez.net ก็คือ ns2.thzhost.com กับ ns6.thzhost.com<br />
ก็เข้าไปตั้งค่าใน DNS Server ตามนี้เลยครับ</p>
<blockquote><p>icez.net. IN NS ns2.thzhost.com.<br />
icez.net. IN NS ns6.thzhost.com.</p></blockquote>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<p><strong>จุดที่สาม:</strong> IP ของ nameserver<br />
นอกจากที่เราไปลงทะเบียน nameserver ไว้กับที่จดโดเมนแล้ว<br />
เราก็ต้องมาเซตที่เครื่อง dns server เราด้วยครับ<br />
ns2.thzhost.com กับ ns6.thzhost.com คือ subdomain ของ domain thzhost.com<br />
ก็เข้าไปที่ DNS Server ของ thzhost.com<br />
ไปเพิ่ม record ตามนี้ครับ</p>
<blockquote><p>ns2 IN A 203.146.129.182<br />
ns6 IN A 203.146.170.140</p></blockquote>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<p>จบ เห้อ ยาวดีจัง ไม่ได้เขียนอะไรยาวๆ แบบนี้มาพักนึงและ<br />
ไม่รู้เรื่องอย่าว่ากันนะครับ (ฮา) เขียนตอนเช้าก็เงี้ย</p>
]]></content:encoded>
			<wfw:commentRss>http://www.icez.net/blog/32/%e0%b8%9b%e0%b8%b1%e0%b8%8d%e0%b8%ab%e0%b8%b2%e0%b9%82%e0%b8%a5%e0%b8%81%e0%b9%81%e0%b8%95%e0%b8%81%e0%b8%81%e0%b8%b1%e0%b8%9a-dns/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>0022 &#124; สร้าง subdomain แบบสิ้นคิด</title>
		<link>http://www.icez.net/blog/26/%e0%b8%aa%e0%b8%a3%e0%b9%89%e0%b8%b2%e0%b8%87-subdomain-%e0%b9%81%e0%b8%9a%e0%b8%9a%e0%b8%aa%e0%b8%b4%e0%b9%89%e0%b8%99%e0%b8%84%e0%b8%b4%e0%b8%94</link>
		<comments>http://www.icez.net/blog/26/%e0%b8%aa%e0%b8%a3%e0%b9%89%e0%b8%b2%e0%b8%87-subdomain-%e0%b9%81%e0%b8%9a%e0%b8%9a%e0%b8%aa%e0%b8%b4%e0%b9%89%e0%b8%99%e0%b8%84%e0%b8%b4%e0%b8%94#comments</comments>
		<pubDate>Sun, 15 Jun 2008 11:58:11 +0000</pubDate>
		<dc:creator>icez</dc:creator>
				<category><![CDATA[Web Server]]></category>
		<category><![CDATA[dns]]></category>
		<category><![CDATA[htaccess]]></category>
		<category><![CDATA[wildcard]]></category>

		<guid isPermaLink="false">http://www.icez.net/blog/?p=26</guid>
		<description><![CDATA[เล่นง่ายมากเลยครับวันนี้ พี่เอก bluegy.com ให้มา config แปลงจาก subfolder เป็น subdomain สมมติ URL เดิม http://www.icez.net/blog/ ก็ให้มันเข้าจาก http://blog.icez.net/ แทนได้เลย เราก็นึกก่อนเลย htaccess rewrite เอาก็จบ เสร็จแล้วก็เลยสิ้นคิดมากมาย นั่ง search หาข้อมูลกันแบบงงๆ เล็กน้อย มั่วเอาจาก wordpress mu สุดท้ายก็ได้ตัว .htaccess ตัวนี้มาครับ RewriteEngine On RewriteBase / RewriteCond %{REQUEST_URI} !\.php$ RewriteCond %{REQUEST_FILENAME} -f [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule . &#8211; [L] RewriteCond %{HTTP_HOST} !www.icez.net RewriteCond %{HTTP_HOST} !^icez.net [...]]]></description>
			<content:encoded><![CDATA[<p>เล่นง่ายมากเลยครับวันนี้<br />
พี่เอก bluegy.com ให้มา config แปลงจาก subfolder เป็น subdomain<br />
สมมติ URL เดิม http://www.icez.net/blog/<br />
ก็ให้มันเข้าจาก http://blog.icez.net/ แทนได้เลย<br />
เราก็นึกก่อนเลย htaccess rewrite เอาก็จบ เสร็จแล้วก็เลยสิ้นคิดมากมาย<br />
นั่ง search หาข้อมูลกันแบบงงๆ เล็กน้อย มั่วเอาจาก wordpress mu<br />
สุดท้ายก็ได้ตัว .htaccess ตัวนี้มาครับ</p>
<blockquote><p>RewriteEngine On<br />
RewriteBase /</p>
<p>RewriteCond %{REQUEST_URI} !\.php$<br />
RewriteCond %{REQUEST_FILENAME} -f [OR]<br />
RewriteCond %{REQUEST_FILENAME} -d<br />
RewriteRule . &#8211; [L]</p>
<p><span style="color: #<a href="http://search.twitter.com/search?q=%23000000" rel="nofollow" target="_blank" title="Search Twitter for &quot;000000&quot;">000000</a>;">RewriteCond %{HTTP_HOST} !www.<span style="color: blue;">icez.net</span><br />
RewriteCond %{HTTP_HOST} !^<span style="color: blue;">icez.net</span></span><br />
RewriteCond %{HTTP_HOST}&lt;&gt;%{REQUEST_URI} ^([^.]+)\.<span style="color: blue;">icez\.net</span>(:80)?&lt;&gt;/([^/]*) [NC]<br />
RewriteCond %1&lt;&gt;%3 !^(.*)&lt;&gt;\1$ [NC]<br />
RewriteRule ^(.*)$ /%1/$1 [L,QSA]</p></blockquote>
<p><span style="text-decoration: line-through;">เจอปัญหาอย่างนึงว่า ถ้าสมมติเข้าเว็บ อย่าง http://something.icez.net/<br />
แล้วไม่มี folder ชื่อนี้อยู่ในระบบเนี่ย<br />
มันจะเด้งหน้า Internal Server Error ขึ้นมาเลย</span><br />
แก้ได้แล้วค้าบบบบ ไม่เจอแล้ว เย้ๆๆๆๆๆๆๆๆๆ<br />
(ถ้าไม่เจอ subdomain จะขึ้นหน้า 404 ธรรมดาแทน)</p>
<p>อ้อ ถ้าใครจะเอาไปทำ อย่าลืมเพิ่ม config apache ลงใน virtual host ด้วยนะครับ</p>
<blockquote><p>ServerAlias *.<span style="color: blue;">icez.net</span></p></blockquote>
<p>ตามนี้เลยฮะ (แก้ตัวสีน้ำเงินด้วยน่อ)<br />
แล้วก็อย่าลืมไป add DNS record ด้วยนะจ๊ะ</p>
<blockquote><p>*.<span style="color: blue;">icez.net</span>. IN A <span style="color: blue;">203.146.129.182</span></p></blockquote>
<p>.</p>
<p>.</p>
<p>แก้ไขเพิ่มเติมจ้าาาา ด้านบนเลย ^^&#8221;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.icez.net/blog/26/%e0%b8%aa%e0%b8%a3%e0%b9%89%e0%b8%b2%e0%b8%87-subdomain-%e0%b9%81%e0%b8%9a%e0%b8%9a%e0%b8%aa%e0%b8%b4%e0%b9%89%e0%b8%99%e0%b8%84%e0%b8%b4%e0%b8%94/feed</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>0008 &#124; Final Score ภาค 3</title>
		<link>http://www.icez.net/blog/11/final-score-%e0%b8%a0%e0%b8%b2%e0%b8%84-3</link>
		<comments>http://www.icez.net/blog/11/final-score-%e0%b8%a0%e0%b8%b2%e0%b8%84-3#comments</comments>
		<pubDate>Sun, 04 May 2008 17:42:21 +0000</pubDate>
		<dc:creator>icez</dc:creator>
				<category><![CDATA[Database]]></category>
		<category><![CDATA[IP Network]]></category>
		<category><![CDATA[admission]]></category>
		<category><![CDATA[bandwidth]]></category>
		<category><![CDATA[dns]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[load balance]]></category>
		<category><![CDATA[optimize]]></category>

		<guid isPermaLink="false">http://www.icez.net/blog/?p=11</guid>
		<description><![CDATA[อ้างอิงจาก Entry ที่แล้ว (เตรียมรับมือประกาศผล admission) และแล้วก็ผ่านพ้นกันไปเป็นที่เรียบร้อยสำหรับการประกาศผล admission 2551 ซึ่งผมก็ได้ไปร่วม ในฐานะเบื้องหลังของเว็บไซต์ http://admissions.bodinzone.com/ (อีกครั้ง) สรุปคร่าวๆ ก็&#8230; งานนี้ทีแรกนึกว่าจะหินมากกว่านี้ครับ แต่เจอเข้าไป &#8220;แค่&#8221; 20 คำร้องต่อวินาที (ย้ำว่าไอ้ 20 req/sec นี่ &#8220;แค่&#8221; จริงๆ สำหรับผม) มาดูสถิติกันดีกว่าครับ กราฟ CPU ไม่มีอะไรเปลี่ยนแปลง ขี้เกียจ cap ขอผ่านละกัน เอาที่น่าสนใจหน่อย กราฟ connection คงค้างในเซิฟเวอร์ครับ ตั้งแต่เริ่มประกาศ คือก่อนเวลาประมาณ 18.00 น. นิดหน่อย มาจนถึงปัจจุบัน ก็ยังมีการเรียกใช้งานอยู่เรื่อยๆ เห็นได้จากที่มีกราฟพุ่งปรี๊ดไปพอประมาณ สรุปเทคนิค optimize ที่ใช้ DNS Round Robin MySQL Indexes MySQL Memory [...]]]></description>
			<content:encoded><![CDATA[<p>อ้างอิงจาก Entry ที่แล้ว (<a href="http://www.icez.net/blog/8/%E0%B9%80%E0%B8%95%E0%B8%A3%E0%B8%B5%E0%B8%A2%E0%B8%A1%E0%B8%A3%E0%B8%B1%E0%B8%9A%E0%B8%A1%E0%B8%B7%E0%B8%AD%E0%B8%9B%E0%B8%A3%E0%B8%B0%E0%B8%81%E0%B8%B2%E0%B8%A8%E0%B8%9C%E0%B8%A5-admission" target="_blank">เตรียมรับมือประกาศผล admission</a>)</p>
<p>และแล้วก็ผ่านพ้นกันไปเป็นที่เรียบร้อยสำหรับการประกาศผล admission 2551<br />
ซึ่งผมก็ได้ไปร่วม ในฐานะเบื้องหลังของเว็บไซต์ <a href="http://admissions.bodinzone.com/">http://admissions.bodinzone.com/</a> (อีกครั้ง)</p>
<p><img src="http://img.thzhost.com/i/7g/twh6c.png" alt="" width="366" height="242" /></p>
<p>สรุปคร่าวๆ ก็&#8230;<br />
งานนี้ทีแรกนึกว่าจะหินมากกว่านี้ครับ<br />
แต่เจอเข้าไป &#8220;แค่&#8221; 20 คำร้องต่อวินาที<br />
(ย้ำว่าไอ้ 20 req/sec นี่ &#8220;แค่&#8221; จริงๆ สำหรับผม)</p>
<p>มาดูสถิติกันดีกว่าครับ<br />
กราฟ CPU ไม่มีอะไรเปลี่ยนแปลง ขี้เกียจ cap ขอผ่านละกัน<br />
เอาที่น่าสนใจหน่อย</p>
<p><img src="http://img.thzhost.com/i/q9/4ar1c.png" alt="" width="523" height="179" /></p>
<p>กราฟ connection คงค้างในเซิฟเวอร์ครับ<br />
ตั้งแต่เริ่มประกาศ คือก่อนเวลาประมาณ 18.00 น. นิดหน่อย มาจนถึงปัจจุบัน<br />
ก็ยังมีการเรียกใช้งานอยู่เรื่อยๆ เห็นได้จากที่มีกราฟพุ่งปรี๊ดไปพอประมาณ</p>
<p>สรุปเทคนิค optimize ที่ใช้</p>
<ol>
<li><a href="http://www.icez.net/blog/5/dns-round-robin">DNS Round Robin</a></li>
<li>MySQL Indexes</li>
<li>MySQL Memory Engine</li>
</ol>
<p>เอาไว้เดี๋ยวค่อยเขียนรายละเอียดของข้อ 2-3 ละกัน<br />
จะได้ดูแล้วมีเนื้อหาเยอะๆ หน่อย blog นี้ (ฮา)</p>
<p>ว่าแต่ น้องๆ ทุกคนเป็นไงกันมั่งครับ<br />
หวังว่าคงได้คณะที่อยากได้กันนะครับ ^^</p>
]]></content:encoded>
			<wfw:commentRss>http://www.icez.net/blog/11/final-score-%e0%b8%a0%e0%b8%b2%e0%b8%84-3/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>0005 &#124; เตรียมรับมือประกาศผล admission</title>
		<link>http://www.icez.net/blog/8/%e0%b9%80%e0%b8%95%e0%b8%a3%e0%b8%b5%e0%b8%a2%e0%b8%a1%e0%b8%a3%e0%b8%b1%e0%b8%9a%e0%b8%a1%e0%b8%b7%e0%b8%ad%e0%b8%9b%e0%b8%a3%e0%b8%b0%e0%b8%81%e0%b8%b2%e0%b8%a8%e0%b8%9c%e0%b8%a5-admission</link>
		<comments>http://www.icez.net/blog/8/%e0%b9%80%e0%b8%95%e0%b8%a3%e0%b8%b5%e0%b8%a2%e0%b8%a1%e0%b8%a3%e0%b8%b1%e0%b8%9a%e0%b8%a1%e0%b8%b7%e0%b8%ad%e0%b8%9b%e0%b8%a3%e0%b8%b0%e0%b8%81%e0%b8%b2%e0%b8%a8%e0%b8%9c%e0%b8%a5-admission#comments</comments>
		<pubDate>Sat, 03 May 2008 10:54:28 +0000</pubDate>
		<dc:creator>icez</dc:creator>
				<category><![CDATA[IP Network]]></category>
		<category><![CDATA[Misc]]></category>
		<category><![CDATA[Web Server]]></category>
		<category><![CDATA[admission]]></category>
		<category><![CDATA[dns]]></category>
		<category><![CDATA[load balance]]></category>

		<guid isPermaLink="false">http://www.icez.net/blog/?p=8</guid>
		<description><![CDATA[และแล้วก็ใกล้จะถึงวันชี้ชะตา เด็กนักเรียน ม.6 ทั่วประเทศ แน่นอนครับ วันประกาศผล admission นั่นเอง กำหนดการปัจจุบัน วันที่ 4 พ.ค. 2551 เวลา 20.00 น. จะเริ่มประกาศพร้อมกันทุกเว็บทั่วประเทศ ในการนี้ เพื่อนผมจากทาง bodinzone ก็เป็นผู้ร่วมประกาศผลด้วยเช่นกัน (โดยมีผมเป็นเบื้องหลังเช่นเคย ฮาๆ) งานนี้ถือว่าเป็นงานหินครับ เพราะ load กระจุกตัวมากๆ คือช่วงเวลาตั้งแต่ก่อนเริ่มประกาศ จนถึงประกาศไปแล้ว 1 วันเต็มๆ จะเป็นวันที่คนเข้าเว็บประกาศผลกันอย่างมืดฟ้ามัวดิน พาลจะทำให้เว็บเหล่านี้ล่มตามๆ กันซะด้วยสิ ซึ่งประกาศทุกปีก็ล่มกันทุกปี ปีที่แล้วผมเลยเข้าร่วมทดสอบ load balancer แบบง่ายๆ ใช้ DNS Round Robin ที่เคยเขียนไปแล้วนั่นแหละครับ แล้วทำ สำเนาการประกาศผลมาไว้ด้วย โดยใช้ชื่อทีมของ bodinzone ปะหน้า ผลปรากฎว่า&#8230; สบายๆ ครับ เนื่องด้วยเข้ามาช้าไปนิดนึง (หลังประกาศผลนิดหน่อย) แต่ปีนี้สิ [...]]]></description>
			<content:encoded><![CDATA[<p>และแล้วก็ใกล้จะถึงวันชี้ชะตา เด็กนักเรียน ม.6 ทั่วประเทศ<br />
แน่นอนครับ วันประกาศผล admission นั่นเอง</p>
<p>กำหนดการปัจจุบัน วันที่ 4 พ.ค. 2551 เวลา 20.00 น. จะเริ่มประกาศพร้อมกันทุกเว็บทั่วประเทศ<br />
ในการนี้ เพื่อนผมจากทาง <a href="http://www.bodinzone.com/" target="_blank">bodinzone</a> ก็เป็นผู้ร่วมประกาศผลด้วยเช่นกัน<br />
(โดยมีผมเป็นเบื้องหลังเช่นเคย ฮาๆ)</p>
<p>งานนี้ถือว่าเป็นงานหินครับ เพราะ load กระจุกตัวมากๆ คือช่วงเวลาตั้งแต่ก่อนเริ่มประกาศ<br />
จนถึงประกาศไปแล้ว 1 วันเต็มๆ จะเป็นวันที่คนเข้าเว็บประกาศผลกันอย่างมืดฟ้ามัวดิน<br />
พาลจะทำให้เว็บเหล่านี้ล่มตามๆ กันซะด้วยสิ ซึ่งประกาศทุกปีก็ล่มกันทุกปี</p>
<p>ปีที่แล้วผมเลยเข้าร่วมทดสอบ load balancer แบบง่ายๆ<br />
ใช้ DNS Round Robin ที่เคยเขียนไปแล้วนั่นแหละครับ<br />
แล้วทำ สำเนาการประกาศผลมาไว้ด้วย โดยใช้ชื่อทีมของ bodinzone ปะหน้า</p>
<p>ผลปรากฎว่า&#8230; สบายๆ ครับ เนื่องด้วยเข้ามาช้าไปนิดนึง (หลังประกาศผลนิดหน่อย)</p>
<p>แต่ปีนี้สิ &#8211; -&#8217; เตรียมการไว้เรียบร้อยแล้ว เหลือ up ฐานข้อมูลลง<br />
เพราะฉะนั้น เราจะต้องรับงานล่วงหน้าด้วย T_T</p>
<p>รอดไม่รอด พรุ่งนี้มาวัดกันครับ</p>
<p>อ้อ ขอให้น้องๆ admission 51 โชคดี ได้คณะที่หวังที่อยากได้กันทุกคนนะครับ พี่จะคอยลุ้น อุอุ</p>
<p>จากเด็ก admission รุ่นแรก</p>
]]></content:encoded>
			<wfw:commentRss>http://www.icez.net/blog/8/%e0%b9%80%e0%b8%95%e0%b8%a3%e0%b8%b5%e0%b8%a2%e0%b8%a1%e0%b8%a3%e0%b8%b1%e0%b8%9a%e0%b8%a1%e0%b8%b7%e0%b8%ad%e0%b8%9b%e0%b8%a3%e0%b8%b0%e0%b8%81%e0%b8%b2%e0%b8%a8%e0%b8%9c%e0%b8%a5-admission/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>0002 &#124; DNS Round Robin</title>
		<link>http://www.icez.net/blog/5/dns-round-robin</link>
		<comments>http://www.icez.net/blog/5/dns-round-robin#comments</comments>
		<pubDate>Fri, 02 May 2008 19:10:43 +0000</pubDate>
		<dc:creator>icez</dc:creator>
				<category><![CDATA[IP Network]]></category>
		<category><![CDATA[dns]]></category>
		<category><![CDATA[load balance]]></category>

		<guid isPermaLink="false">http://www.icez.net/blog/?p=5</guid>
		<description><![CDATA[ระบบ DNS นี้มีลูกเล่นอย่างนึงครับ server admin ส่วนใหญ่น่าจะรู้จักกันดีในฐานะของผู้ช่วย load balancer คือช่วยกระจายงานออกไปตามเครื่องต่างๆ หลักการมันง่ายๆ ครับ แค่ชี้ Domain เดียวกันไปที่มากกว่า 1 IP ในกรณีของ IP (A) record นะ แล้วที่เหลือก็ปล่อยเป็นหน้าที่ของเครื่องที่ค้นหา IP แล้วละครับว่าจะแจก IP ไหนให้ ซึ่งโดยมากก็จะเป็นแบบหมุนเวียน (round-robin) คือ การสอบถามครั้งที่ 1 แจก IP ที่ 1 ให้ การสอบถามครั้งที่ 2 แจก IP ที่ 2 ให้ การสอบถามครั้งที่ 3 กลับมาแจก IP ที่ 1 อีกรอบ (กรณีมีแค่ 2 IP) ตัวอย่างการตั้งค่าครับ ที่ใช้อยู่ปัจจุบัน [...]]]></description>
			<content:encoded><![CDATA[<p>ระบบ DNS นี้มีลูกเล่นอย่างนึงครับ<br />
server admin ส่วนใหญ่น่าจะรู้จักกันดีในฐานะของผู้ช่วย load balancer<br />
คือช่วยกระจายงานออกไปตามเครื่องต่างๆ</p>
<p>หลักการมันง่ายๆ ครับ<br />
แค่ชี้ Domain เดียวกันไปที่มากกว่า 1 IP ในกรณีของ IP (A) record นะ<br />
แล้วที่เหลือก็ปล่อยเป็นหน้าที่ของเครื่องที่ค้นหา IP แล้วละครับว่าจะแจก IP ไหนให้<br />
ซึ่งโดยมากก็จะเป็นแบบหมุนเวียน (round-robin) คือ<br />
การสอบถามครั้งที่ 1 แจก IP ที่ 1 ให้<br />
การสอบถามครั้งที่ 2 แจก IP ที่ 2 ให้<br />
การสอบถามครั้งที่ 3 กลับมาแจก IP ที่ 1 อีกรอบ (กรณีมีแค่ 2 IP)</p>
<p>ตัวอย่างการตั้งค่าครับ ที่ใช้อยู่ปัจจุบัน<br />
<img style="border: 0pt none;" src="http://img.thzhost.com/i/xb/0js2c.png" alt="dns round robin example" width="457" height="69" /></p>
<p>ข้อดีของระบบ DNS Round Robin นี้</p>
<ol>
<li>ตั้งค่าง่ายมาก เพราะ DNS Server ส่วนมากในปัจจุบันรองรับอยู่แล้ว</li>
<li>(ในระบบแบบพื้นฐาน) ไม่ต้องมีการติดตั้งอุปกรณ์ใดๆ เพิ่มเติม แม้แต่ชิ้นเดียว</li>
<li>ช่วย network redundant ได้นิดหน่อย คือถ้าล่ม 1 IP, ที่เหลือก็ยังสามารถทำงานได้</li>
</ol>
<p>แต่ในขณะเดียวกัน ข้อเสียใหญ่ที่สุด ที่เกิดขึ้นมาเพราะอยู่ในระบบ DNS เลยครับ<br />
&#8221; มันติด cache &#8221;<br />
ทำให้เราไม่สามารถคาดคะเนผลลัพท์ได้เลยว่า เครื่องลูกข่ายจะสอบถามแล้วได้ IP อะไรตอบกลับไป<br />
ทำให้ไม่สามารถควบคุมการเข้าถึง server ได้เลยว่า จะให้เน้นไปที่ server เครื่องไหน</p>
<p>ดังนั้น เครื่องที่จะทำ DNS-RR นี่ก็เลยควรจะเป็นเครื่องที่ spec ใกล้เคียงกันทั้งหมดครับ<br />
ไม่เช่นนั้นจะเกิดเหตุการแบบนี้ครับ</p>
<p>server 1: CPU Xeon (p4) 3.0 GHz HyperThreading &#8212; load average: 2x.xx, 2x.xx, 1x.xx<br />
server 2: CPU Xeon X3210 QuadCore 2.13GHz &#8212; load average: 3.xx, 2.xx, 2.xx</p>
<p>ผลปรากฎว่า คนไหนที่เข้าไปโผล่เครื่อง server 1 อืดจนแทบทำอะไรไม่ได้เลย T_T<br />
ชีวิตมันน่าเศร้า</p>
]]></content:encoded>
			<wfw:commentRss>http://www.icez.net/blog/5/dns-round-robin/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Served from: www.icez.net @ 2012-02-10 16:57:56 -->
