ความรู้คู่ความก้าวหน้า
 
Option ของการ Redistribute Route เข้าสู่ OSPF Domain (เน้น OSPF External Route Type 1 และ 2)


เนื่องจากช่วงนี้วุ่นๆ เลยขออนุญาติเขียนบทความสั้นๆ ง่ายๆ แต่น่าจะมีประโยชน์กับหลายๆ คนนะครับ

บทความนี้มีส่วนเกี่ยวข้องกับบทความการ Redistribute Route ที่ผมเคยเขียนไว้แล้ว ตาม URL ข้างล่างนี้ครับ ท่านสามารถลองไปอ่านดูก่อนได้ครับ

//www.bloggang.com/viewblog.php?id=likecisco&date=30-09-2011&group=3&gblog=6

สำหรับตัวอย่าง Command การ Redistribute Route จาก Routing Protocol ใดๆ เข้าสู่ OSPF Domain นั้น ผมขอยกตัวอย่างการดูด Route จาก EIGRP AS 100 เข้าสู่ OSPF Process id 1 ดังนี้ครับ

Router(config)# router ospf 1
Router(config-router)# redistribute eigrp 100
(ดูด Route ที่อยู่ใน EIGRP AS 100 เข้าสู่ OSPF process id 1)

หากจบ command ที่ "redistribute eigrp 100" แสดงว่า เรายอมรับ Option การดูด Route จาก EIGRP AS 100 เข้าสู่ OSPF Process 1 แบบ Default นั่นคือ

- Subnets จะไม่ถูก Redistribute เข้าสู่ OSPF Domain โดย default
- Default metric = 20
- Default metric type = 2 (E2 หรือ O E2)


หากเราต้องการ:
1. ให้ Route ที่ถูกดูดมาจาก EIGRP AS 100 ถูกโยนเข้าไปใน OSPF Domain โดยอนุญาติให้มีการดูด route ที่เป็นแบบ Subnet เข้ามาใน OSPF domain ได้ ให้ใส่ Option: subnets
Note หากไม่ใส่ Option subnets แล้ว จะมีเฉพาะเพียงแค่ route ที่เป็น major network เท่านั้นที่จะถูกดูดเข้ามา OSPF domain ได้
2. ให้ Route ที่ถูกดูดมาจาก EIGRP AS 100 มีค่า metric (OSPF Cost) ตั้งต้นคือ 10 (ไม่ใช่ 20 ตามค่า default) ให้ใส่ Option: metric 10
3. ให้ Route ที่ถูกดูดมาจาก EIGRP AS 100 ถูกโยนเข้าไปใน OSPF Domain ด้วย OSPF External Route Type 1 (ไม่ใช่ Type 2 หรือ O E2 โดย default) ให้ใส่ Option: metric-type 1

เราสามารถ configure ใหม่ได้ดังนี้ครับ

Router(config)# router ospf 1
Router(config-router)# redistribute eigrp 100 subnets metric 10 metric-type 1

ในการ Redistribute Route ใดๆ จากนอก OSPF Domain เข้ามายัง OSPF Domain โดย Default แล้ว ASBR จะทำการส่ง OSPF routing update แบบ OSPF External Route Teyp 2 (O E2)

ถาม: นอกจาก O E2 แล้วยังมีอย่างอื่นอีกไหม
ตอบ นอกจาก O E2 แล้วยังมี O E1 อีกครับ สามารถอธิบายได้ดังนี้ครับ (ผมขออธิบาย O E2 ก่อนเพราะเป็นค่า Default แล้วค่อยยก O E1 มาอธิบาย จะได้เห็นความแตกต่างครับ)

E2 (default): Type O E2 (OSPF External Route Type 2)
- OSPF External Route Type 2 จะไม่มีการเปลี่ยนแปลงค่า Metric (OSPF Cost) ตลอดเส้นทางที่มันทำ Routing Update
- เราจะใช้ type นี้ก็ต่อเมื่อ OSPF Domain ของเรามีการต่อกับ ASBR เพียงตัวเดียวเท่านั้นที่ advertise external route เข้ามาใน OSPF Domain แม้ "O E2 จะไม่มีการเปลี่ยนแปลง ค่า Metric (OSPF Cost) ตลอดเส้นทางที่มันทำ Routing Update" แต่เรายังคงใช้ O E2 ได้ เพราะเรามีทางออกไปยัง Network ปลายทาง (Destination Network) ที่อยู่นอก OSPF Domain เพียงทางออกเดียวเท่านั้น (มี ASBR เพียงตัวเดียว)

E1: Type O E1 (OSPF External Route Type 1)
- OSPF External Route Type 1 จะมีการเปลี่ยนแปลง หรือ Upate Metric (OSPF Cost) ตลอดเส้นทางที่มันทำ Routing Update
-เราจะใช้ type นี้ก็ต่อเมื่อ OSPF Domain ของเรามีการต่อกับ ASBR มากกว่าหนึ่งตัว ที่ advertise external route เดียวกัน เข้ามาใน OSPF Domain และเพราะว่า "OSPF External Route Type 1 จะมีการเปลี่ยนแปลง หรือ Upate Metric (OSPF Cost) ตลอดเส้นทางที่มันทำ Routing Update" ดังนั้น การใช้ OSPF External Type 1 นี้ จะสามารถหลีกเลี่ยงการเกิดปัญหา suboptimal routing (หรือการ route เส้นทางที่ไม่เหมาะสม) ไปยัง Network ปลายทางที่อยู่นอก OSPF Domain ได้ หรือกล่าวอีกนัยหนึ่งได้ว่า OSPF สามารถเลือกส่ง Traffic ออกไปยัง Network ปลายทางที่อยู่นอก OSPF Domain ผ่าน ASBR ตัวที่เหมาะสมที่สุดโดยพิจาณาจาก OSPF Cost ที่ดีที่สุดได้นั่นเอง

หมายเหตุ สำหรับ OSPF Network จะเรียก Router ที่ทำการ Redistribute Route ว่าเป็น ASBR

ขอบคุณครับ
โก้-ชัยวัฒน์



Create Date : 23 ตุลาคม 2554
Last Update : 20 มกราคม 2559 0:34:47 น. 12 comments
Counter : 5250 Pageviews.  
 
 
 
 
 
 

โดย: amigo (bobbyjuna ) วันที่: 21 พฤศจิกายน 2554 เวลา:21:04:20 น.  

 
 
 
^____^ สวัสดีครับ เป็นอย่างไรบ้างเอ่ย ขอบคุณครับแหล่งข้อมูลดีๆ
 
 

โดย: JanChaiwat IP: 58.8.189.55 วันที่: 3 ธันวาคม 2554 เวลา:23:41:56 น.  

 
 
 
อิๆ ช่วงนี้เหนื่อยๆ กับงาน เลยไม่ค่อยมีแรงสร้างผลงานเท่าไหร่ แต่ก็พอมีบ้างประปราย แต่ก็ไม่ได้เขียนแบบ Full Option (เขียนละเอียดยิป) ยังไงจะพยายามนะครับ ขอบคุณมากๆ ครับสำหรับกำลังใจครับ
 
 

โดย: kochaiwat วันที่: 4 ธันวาคม 2554 เวลา:0:25:12 น.  

 
 
 
แจ่มแมวเลยครับ ขอบคณสำหรับความรู้ครับ
 
 

โดย: code11x2 IP: 124.120.124.244 วันที่: 17 มกราคม 2555 เวลา:6:31:54 น.  

 
 
 
เฮียครับ กำลัง serch เรื่อง redistribute route ก็มาเจอเว็บเฮียเนี่ยแหละ สั้น ๆ ง่าย ๆ ได้ใจความครบถ้วนดี อิอิ
 
 

โดย: Aekasak_Amorn IP: 27.130.57.36 วันที่: 17 สิงหาคม 2555 เวลา:20:18:22 น.  

 
 
 
ขออนุญาตสอบถามครับ ใน ospf ถ้าเร้าเตอร์เรียนรู้ subnet มาจากทั้งภายนอกและภายใน ospf domain ที่เป็น subnet เดียวกัน เร้าเตอร์จะเชื่อเร้าที่มาจากภายใน ospf domain ก่อนเสมอ ถึงแม้ว่าค่า cost ภายในจะมีค่ามากกว่าค่า cost ที่รับมาจากเร้าภายนอกก็ตามใช่ไหมครับ
 
 

โดย: pramual IP: 58.137.25.126 วันที่: 25 มกราคม 2558 เวลา:15:11:01 น.  

 
 
 
@ K. Pramual,
คำถามนี้น่าสนใจครับ
เบื้องต้นนะครับ ผมเข้าใจว่าคำถามนี้น่าจะหมาย topology ที่มีการเชื่อมต่อระหว่าง OSPF domain กับ routing protocol อืนมากกว่า 1 ตัว (exit point ออกจาก OSPF domain มากกว่า 1 จุด)
โดยปกติแล้ว route ที่ถูกกำเนิดอยู่ใน OSPF domain เมื่อถูก redistribute ไปยังนอก domain แล้ว มันจะต้องถูกกรองด้วย route-map ก่อนที่ route นั้นจะถูก redistribute กลับเข้ามายัง OSPF Domain อีกครั้งผ่านทาง router อีกตัวหนึ่ง เช่น ทั้ง Router R1 และ R2 ทั้งคู่เป็นจุดเชื่อมต่อระหว่าง OSPF Domain กับ EIGR Domain
โดย Network 10.1.1.0/24 ที่ถูกกำเนิดอยู่ใน OSPF domain ถูก redistribute ออกจาก OSPF domain ไปยัง EIGRP domain ผ่านทาง R1 แล้ว และเมื่อ Routing Update ใน EIGRP Domain ได้ Update Network 10.1.1.0/24 วนกลับมาหา R2 แล้ว R2 จะต้องทำการกรอง route (Network 10.1.1.0/24) ไม่ให้ update กลับเข้ามาใน OSPF Domain อีก (และในทิศทางกลับกัน ก็ต้องทำด้วยนะครับ)

เหตุผลที่ต้องกรอง route เพื่อป้องกันปัญหา Routing Loop และที่ผ่านมาผมก็ทำเช่นนี้มาตลอดครับ

แต่คำถามนี้น่าสนใจตรงที่ ถ้าเราไม่สนใจเรื่อง routing loop แล้ว แต่เราแค่อยากรู้ว่า "OSPF router จะเลือกเส้นทางไหน ไปยัง route เดียวกัน ที่ถูก update มาจากภายใน domain แต่มีค่า cost มากว่า route ที่ถูก update มาจากนอก domain"
ตอบตรงนี้ก่อนเลยครับว่ายังไม่เคยทำครับ เพราะที่ผ่านมันกังวลเรื่อง loop แต่ผมสนใจมากเลย ยังไงผมขอลอง test ก่อนดีกว่าครับ เรื่องของทฤษฎิว่ากันที่หลัง แต่ผมอยากเห็นจาก lab เลยมากกว่า ถ้าผม test เสร็จแล้ว ได้ผลยังไง จะมา update นะครับ (ช่วงนี้งานยุ่งๆ แต่จะพยายามนะครับ)
ขอบคุณครับ
 
 

โดย: kochaiwat วันที่: 26 มกราคม 2558 เวลา:0:15:05 น.  

 
 
 
ขอขอบคุณมากครับ คือ Topology เป็นแบบนี้ครับ เรียงตามนี้นะครับ จากซ้ายไปขวา
network 10.100.100.0/24 อยู่ใน ospf 1 area 1 ต่อไป ospf 1 area 0 เชื่อมต่อกับ eigrp 100 แล้วก็ต่อกับ ospf 1 area 2 ต่อไป ospf 1 area 0 ต่อกับ ospf 1 area 3 และต่อกับ network 10.100.100.0/24 ซึ่ง network หัวท้ายเหมือนกันครับ ทำเป็น DR Site โดยสภาวะปกติ users มาใช้งาน network ด้านซ้ายเป็นหลัก ถ้าด้านซ้ายล่วงถึงจะมาใช้ network ด้านขวาแทนครับ
สำหรับ users จะอยู่ใน eigrp 100 domain กับ ospf 1 area 0 domain ด้านขวา และ eigrp 100 domain จะเป็น cisco device และ ospf 1 area 0 domain ด้านขวา จะเป็น 3com device และจะมี juniper firewall 3 ตัว กั้นระหว่าง ospf area 2 กับ area 0 ในฝั่งซ้าย และกั้นระหว่าง ospf area 2 กับ area 0 และกั้นระหว่าง ospf area 0 กับ area 3 ฝั่งขวา ครับ
ปัญหาที่พบคือว่า users ที่อยู่ใน ospf 1 area 0 ฝั่งขวา จะเห็นเร้าติ้งที่รับมาจาก ospf 1 area 3 เสมอ ถึงแม้ว่าค่า cost จะมากกว่าที่รับมาจาก ฝั่งด้านซ้ายก็ตาม ซึ่งฝั่งที่รับมาจากฝั่งด้านซ้ายมันมองว่าเป็น external route แล้วจะมีวิธีแก้ไขอย่างไรครับ ขอคุณมากครับ ถ้าแนบรูปได้น่าจะดีนะครับ
 
 

โดย: pramual IP: 58.137.25.126 วันที่: 26 มกราคม 2558 เวลา:7:24:55 น.  

 
 
 
@K. Pramual,
ผมไม่มั่นใจว่าภาพที่ผมเข้าใจกับภาพที่คุณ Pramual บอกมาเป็นภาพเดียวกันหรือไม่ และดูเหมือน Network ของคุณจะซับซ้อนอยู่ไม่น้อย
เอาเป็นว่า ผมคงไม่เข้าไปยุ่งในรายละเอียดของ network ของคุณนะครับ แต่ผมจะ test ในลักษณะที่ผมได้เคยกล่าวไปแล้ว คือ ประกาศ network 10.1.1.0/24 ออกจาก OSPF domain ไปยัง EIGRP แล้ววนกลับเข้ามยัง domain เดิมอีกครั้ง โดยผ่าน router อีกตัวหนึ่ง โดยที่ผมจะเน้นที่ Area 0 Area เดียวเท่านั้น เพราะเงื่อนไขคือ ต้องการเปรียบเทียบเรื่อง Cost ระหว่างภายใน Domain กับ Cost ที่มาจาก External Domain นะครับ

ปล. สำหรับเรื่อง Cost ระหว่าง Internal Area กับ Cost ระหว่าง External Area ก็เป็นอีกประเด็นหนึ่ง มันจะมีหลักการเหมือนกัน เพื่อไม่ให้สับสน ผมจะไม่นำเงื่อนไขของ Area เข้ามาเกี่ยวข้องด้วย ไม่เช่นนั้นเราจะตัดไม่ขาดเรื่อง Cost ว่ามันเป็นประเด็นของ Internal Area VS. External Area หรือประเด็นของ Internal Domain หรือ External Domain นะครับ

(ยังไม่ได้ test นะครับ แต่วาด diagram ไว้แล้ว เหลือแค่ลงมือ - แต่ขอเวลาเคลียร์งานก่อนนะครับ)

ขอบคุณครับ
โก้-ชัยวัฒน์ฺ
 
 

โดย: kochaiwat วันที่: 26 มกราคม 2558 เวลา:22:48:21 น.  

 
 
 
ขอถามหน่อยครับ
ค่า IP ของ PC 2 เครื่องด้านล่างเป็น วงเดียวกันหรือไม่
PC1
IP address : 192.168.1.1
subnet : 255.255.255.0
PC2
IP address : 192.168.0.1
subnet : 255.255.255.0
 
 

โดย: ting IP: 171.6.208.235 วันที่: 9 กุมภาพันธ์ 2558 เวลา:1:40:20 น.  

 
 
 
@คุณ Ting,
จากที่ถามมาคำตอบคือ คนละวง (คนละ subnet) กันครับ
192.168.1.1 255.255.255.0 อยู่ subnet 192.168.1.0
192.168.0.1 255.255.255.0 อยู่ subnet 192.168.0.0

ถ้าต้องการทราบว่ามาได้อย่างไร ให้อ่านบทความเกี่ยวกับ "พื้นฐานเครือข่าย computer" ที่ผมได้เขียนไว้ทั้งหมด 7 ตอนดูนะครับ ตาม link นี้ครับ

https://www.bloggang.com/viewblog.php?id=likecisco&group=1

โก้-ชัยวัฒน์
 
 

โดย: kochaiwat วันที่: 9 กุมภาพันธ์ 2558 เวลา:17:57:06 น.  

 
 
 
ขอบคุณบทความดีๆครับอาจารย์ เข้าใจเรื่อง OSPF O E1,O E2 มากขึ้นเลยครับ ว่าเราควรจะใช้แบบไหน
 
 

โดย: Aoiwat IP: 159.192.219.169 วันที่: 4 กรกฎาคม 2562 เวลา:15:16:52 น.  

Name
Opinion
*ใช้ code html ตกแต่งข้อความได้เฉพาะสมาชิก

BlogGang Popular Award#15


 
kochaiwat
 
Location :
กรุงเทพฯ Thailand

[Profile ทั้งหมด]

ให้ทิปเจ้าของ Blog [?]
ฝากข้อความหลังไมค์
Rss Feed
Smember
ผู้ติดตามบล็อก : 693 คน [?]




เริ่มงานครั้งแรกที่บริษัท UIH (United Information Highway) ซึ่งเป็นบริษัทผู้ให้บริการทางด้านการสื่อสารข้อมูล อาทิเช่น Lease Line, Frame Relay และ MPLS และได้ย้ายไปร่วมงานกับบริษัท dtac โดยได้ทำงานเกี่ยวกับ IP Network (Switch/Router/Firewall/F5-Loadbalancer) รวมถึง MPLS Network และ IPRAN (IP Radio Access Network) ซึ่งเป็น IP Network ที่รองรับ Access ของ Mobile System นอกจากนั้นยังสนใจศึกษาเรื่อง IPv6 Address ที่จะมาใช้แทน IPv4 ที่เราใช้งานอยู่ในปัจจุบัน
แต่ด้วยความชอบในการแบ่งปันความรู้ จึงได้มีโอกาสสอน CCNA อยู่ที่สถาบันแห่งหนึ่งในอาคารฟอร์จูนทาวน์ในวันเสาร์-อาทิตย์ ตั้งแต่ปี พ.ศ. 2549 จนถึง พ.ศ. 2553 รวมเป็นเวลา 4 ปี, หลังจากนั้นในระหว่างที่ทำงานที่ dtac ก็ได้สอนเสาร์-อาทิตย์เรื่อยมา

เคยเป็น Trainer หรือ Instructor อย่างเต็มตัว สอนวิชาต่างๆ ของ Cisco อย่างเป็นทางการ (Authorize Training) ที่บริษัท Training Partner Thailand จนถึง มีนาคม 2014 และได้ตัดสินใจออกมาสอนเอง เพราะด้วยความรักในอาชีพการสอน และต้องการที่จะแบ่งปันความรู้ให้กับบุคคลในระดับกลางและล่างเพื่อส่งเสริมให้ได้มีโอกาสได้เรียน และได้มีโอกาสสมัครงาน แต่ด้วยใจรักในบริษัท Cisco ดังนั้น เมื่อมีโอกาสเข้ามา จึงได้ตัดสินใจหยุดการสอน และได้เข้าไปเป็นพนักงาน หรือทำงานที่บริษัท Cisco Thailand ตั้งแต่วันที่ 15 กุมภาพันธ์ 2559 (2016) จนถึงปัจจุบัน

ลูกค้าที่เคยมารับการอบรม เช่น
- Lao Telecom Company Ltd
- CAT Telecom
- TOT
- True
- dtac
- CDG Group
- SITA air transport communications and information technology (www.sita.aero/)
- Infonet Thailand
- MultiLink Co., Ltd
- โรงพยาบาลไทยนครินทร์
- และเคยไปเป็นวิทยากรพิเศษที่ มหาวิทยลัยกรุงเทพสุวรรณภูมิ

ปัจจุบัน โก้-ชัยวัฒน์ ได้ผ่านการสอบ:
- Cisco Certified Internetwork Expert (CCIE) No. 51353 และ
- Cisco Certified Systems Instructor (CCSI) ซึ่งเป็น Certificate ที่ออกให้โดย Cisco สำหรับผู้ที่จะเป็นผู้สอน Cisco Certificate อย่างเป็นทางการ และได้รับ CCSI ID: 34784

วิชาที่สามารถได้สอนได้สำหรับ Cisco Certificate ในขณะนี้คือ
- CCNA Routing & Switching
- CCNA Security (IINS)
- CCNP Route & Switch: ROUTE
- CCNP Route & Switch: SWITCH
- CCNP Route & Switch: TSHOOT
- MPLS (IOS)
- MPLS Traffic Engineering (IOS)
- CCNP Service Provider: SPROUTE (OSPF, IS-IS, BGP, Prefix-List, Route-Map and RPL (Routing Policy Language))
- CCNP Service Provider: SPADVROUTE (Advance BGP, Multicast, and IPv6)
- CCNP Service Provider: SPCORE (MPLS, MPLS-TE, QoS)
- CCNP Service Provider: SPEDGE (MPLS-L3VPN, MPLS-L2VPN (AToM and VPLS)
- IPv6

Certification ที่มีอยู่ในปัจจุบัน CCIE# 51353, CCSI# 34784, CCNA Routing & Switching, CCNA Security (IINS), CCNA Design, CCNP Routing & Switching, CCIP, CCNP Service Provider ซึ่งเป็น Certification ของ Cisco product รวมถึง Certification ของสถาบัน EC-Council (www.eccouncil.org) นั่นคือ Certified Ethical Hacker (CEH)

"เป้าหมายมีไว้ให้ไล่ล่า บ้างเหนื่อยล้าบ้างหยุดพัก
ชีวิตแม้ยากนัก แต่เรารักเราไม่ถอย
ชีวิตแม้ต้องคอย จะไม่ปล่อยไปวันๆ
ชิวิตไม่วายพลัน แม้นสักวันต้องได้ชัย"

"แม้ระยะทางจะไกลแค่ไหน แม้ต้องใช้เวลามากเพียงใด
ขอเพียงแค่มีความตั้งใจ เราต้องได้ไปให้ถึงมัน"

ผมจะไม่ยอมทิ้งฝัน แต่จะไล่ล่ามันให้ถึงที่สุด สักวันฝันอาจจะเป็นจริง ถึงจะไปไม่ถึง แต่ผมก็ภูมิใจที่ได้ทำ
==============================
ความรู้ = เมล็ดพืช
ความพยายามในการเรียนรู้ = ปุ๋ย, น้ำ และความใส่ใจที่จะปลูก
สรุปคือ
ยิ่งพยายามเรียนรู้ ยิ่งพยายามศึกษาในเรื่องใดๆ ผลที่ได้คือ จะได้ความรู้ในเรื่องนั้นๆ อย่างลึกซึ้ง เปรียบเสมือนปลูกต้นไม้ด้วยความใส่ใจ ให้น้ำ ให้ปุ๋ย ผลที่ได้ก็คือ ต้นไม้ที่เติบโตอย่างแข็งแรง และผลิดอกและผลที่งดงามให้เราได้ชื่นชม
ความพยายามอยู่ที่ไหน ความสำเร็จจะอยู่ที่นั่น หรือที่ไหนก็ช่าง แต่เชื่อเถอะ เราจะได้ผลลัพธ์ที่ดีจากความพยายามนั้นๆ ไม่มากก็น้อย
อยากได้อะไรให้พยายาม แล้วความสำเร็จมันจะเข้ามาหาเอง
ผมเชื่อ และมั่นใจอย่างนั้น
===============================
ตอนนี้ผมได้ไปถึงฝัน (CCIE) แล้ว และสิ่งที่ไม่คาดฝัน คือได้ทำงานที่บริษัท Cisco ซึ่งถือได้ว่าไกลเกินฝัน

กว่าผมจะมาถึงจุดนี้ได้ เกิดจากความตั้งใจ มุ่งมั่น และพยายามอย่างไม่ย่อท้อ ศึกษาหาความรู้ และฝึกฝนตนเองอยู่เสมอ จนกระทั่งประสบความสำเร็จ และผมก็ได้พิสูจน์แล้วว่า ความพยายามอยู่ที่ไหน ความสำเร็จอยู่ที่นั่น ขอเพียงแค่อย่าท้อ อย่าถอย และอย่าหยุด

ผมขอเป็นกำลังใจให้กับทุกคน และขอให้ประสบความสำเร็จดังที่มุ่งหวัง ไม่ว่าท่านจะหวังสิ่งใดก็ตามครับ

ท้ายที่สุด ผมขอฝากข้อคิดในเรื่อง Certificate ไว้สักนิดนะครับ:
*** "CCIE และ Certificate อื่นๆ มีไว้เพื่อทำมาหากิน และมีไว้เพื่อข่มตนไม่ให้เกรียน เพราะความเกรียนจะนำมาซึ่งการเป็นเป้าให้คนที่เค้าหมั่นไส้ยิงเอานะครับ" ***

Facebook: Chaiwat Amornhirunwong
New Comments
[Add kochaiwat's blog to your web]

MY VIP Friends


 
 
pantip.com pantipmarket.com pantown.com