วิธีใช้โปรแกรม Forward Port ง่ายๆ ด้วย UPnP

by on 10 July, 2013 - 13:53, under Technology - Internet, Technology - Software Tags: , , ,

ปัจจุบัน ตั้งแต่อินเตอร์เน็ตความเร็วสูงเข้ามาในประเทศไทย ลักษณะการต่ออินเตอร์เน็ตของบ้านเราก็เปลี่ยนไปเรื่อยๆ จากเมื่อก่อนเรานิยมใช้โมเด็มหมุนเข้าระบบอินเตอร์เน็ตโดยตรง (56K) โดยมีทั้งแบบ internal, external ก็ว่ากันไป ยุคนี้ผู้ให้บริการอินเตอร์เน็ตแถมโมเด็มเราเตอร์ (Modem Router) เป็นเครื่องมือสำหรับการเชื่อมต่ออินเตอร์เน็ต ส่วนเวลาจะใช้ก็สามารถใช้สาย LAN เสียบด้านหลังเครื่องคอมพิวเตอร์ของเราได้ทันที ไม่ต้องสร้าง connection profile เหมือนยุคเก่าๆ อีกต่อไป

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

นั่น เป็นเหตุผลว่าทำไมคอมพิวเตอร์ของเราที่ต่อหลัง Modem Router นั้นสามารถติดต่อกับคอมพิวเตอร์อื่นๆ ได้อย่างสะดวกเพียงแค่ทิศทางเดียว (คือเราติดต่อไปหาเขา) แต่การที่เขาจะติดต่อมาหาเราเช่นการ ping โดยใช้ IP จริงๆ นั้นกลับได้ Timeout กลับมา

เพราะ โมเด็มนั้นไม่สามารถล่วงรู้ได้ว่าอุปกรณ์ตัวที่ผู้ต้องการติดต่อมาหานั้นคือ เครื่องไหน เช่นหากโมเด็มเราเตอร์ของเรามีพอร์ท LAN สี่พอร์ท (ปกติก็จะเป็นแบบนี้ัหมด) แต่เราต่อคอมพิวเตอร์ไว้ถึงสี่ตัว สร้างเกมไว้หนึ่งเครื่อง (เครื่อง B) เพื่อให้เพื่อนติดต่อเข้ามา แต่ Router ไม่สามารถคาดเดาได้เลยว่าจะต่อกับเครื่องคอมพิวเตอร์ A B C หรือ D

วิธี แก้ที่เรารู้จักกันเป็นอย่างดีคือการ Forward Port โดยเข้าไปในหน้า Control Panel ของ Router ตัวนั้นๆ และทำการกรอกไอพีวงในของเครื่องคอมพิวเตอร์ที่เราอยากจะให้ภายนอกติดต่อเข้า มา พร้อมระบุพอร์ทที่ต้องการด้วย (ไอพีระบุเครื่อง พอร์ทระบุ application) หากเราเซ็ทอย่างถูกต้อง เพื่อนก็จะสามารถเข้ามา Join ในเกมที่เราทำการสร้างไว้ได้ผ่าน IP จริง

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

ผมว่าหลายคนนั้นรู้วิธีการดูไอพีจริงๆ บนโลกอินเตอร์เน็ตของเราอยู่แล้ว (หากใครอยากรู้ว่าไอพีของเราคืออะไร กดเข้าไปในเว็บนี้ www.whatismyip.com จะโชว์ไอพีจริงๆ ออกมาครับ) แต่การ Forward Port นั้นเรียกได้ว่าไม่ง่ายเลยสำหรับผู้ที่ไม่คุ้นเคยกับการเซ็ทอุปกรณ์เหล่านี้ รวมถึงมีความยุ่งยากหลายขั้นตอนตั้งแต่การหาไอพีวงในของเรา รวมถึงไม่รวมเวลาเราปิดคอมพิวเตอร์ไปนานๆ แล้ว Modem Router จ่ายไอพีใหม่ให้กับเรา ก็ต้องไปเซ็ทกันใหม่อีกรอบตามค่าที่เปลี่ยนไปน่าปวดหัวและน่ารำคาญ

อีก วิธีนึงที่ใช้ได้คือการใช้โปรโตคอล UPnP (Universal Plug-and-Play) ที่เราเตอร์รุ่นใหม่ๆ นั้นรองรับแล้วทุกรุ่น UPnP นั้นทำให้อุปกรณ์ที่ต่อกับอินเตอร์เน็ตโดยตรงสามารถเข้าถึงได้แม้ว่าจะไม่ ได้อยู่ในอินเตอร์เน็ตวงเดียวกัน เช่นพวกกล้อง IP Camera เป็นต้น รวมถึงวิธีนี้เป็นวิธีที่ง่ายที่สุดในการ forward port เนื่องจากใช้เพียงซอฟต์แวร์ตัวเดียวเท่านั้นก็สามารถทำได้แล้ว

ก่อนอื่นมีโปรแกรมประเภทนี้หลายตัวให้เราเลือกใช้กันตามสะดวก แต่มีสองตัวที่ผมแนะนำ ณ ขณะนี้คือ

UPnP PortMapper โดยตัวนี้จำเป็นต้องใช้ Java Runtime ในการรันด้วย หากโหลดโปรแกรมตัวนี้จำเป็นต้องโหลด Java Runtime มาก่อน (กรณีที่คุณยังไม่ได้ลงในเครื่อง)

อีกโปรแกรมคือ UPnP Wizard ที่สามารถใช้งานได้ง่ายกว่า แต่มีฟังก์ชั่นที่น้อยกว่าโปรแกรมตัวบน

แต่ในบทความนี้ผมจะใช้โปรแกรม UPnP PortMapper ในเปิดพอร์ตครับ สำหรับอีกโปรแกรมนั้นใช้งานคล้ายกัน

เมื่อเปิดโปรแกรมมาแล้วจะพบหน้าจอแบบนี้ ให้กดปุ่ม Connect ตามภาพเพื่อติดต่อกับ Router

หลังจากกด connect รอสักครู่ก็จะได้ข้อมูลของ Router ที่เราเชื่อมต่อด้วยมา พร้อม IP จริงของอินเตอร์เน็ต

ด้านบนเราจะเห็นรายชื่อของพอร์ทที่เปิดอยู่ในขณะนี้ (ที่อาจเกิดจากโปรแกรมตัวอื่นๆ ที่มีฟังก์ชั่น UPnP) ให้เรากดปุ่ม Create เพื่อสร้างโปรไฟล์ครับ

จะมีหน้าต่างขึ้นมา ให้กรอกรายละเอียดชื่อให้เรียบร้อย ส่วนช่อง Remote Host ให้เว้นไว้แบบนั้น เราจะเห็นสองปุ่มด้านขวาคือ Add สำหรับการเพิ่มพอร์ทแค่เพียงอันเดียว และอีกปุ่มคือ Add port range… ที่สามารถเพิ่มพอร์ทได้หลายพอร์ท โดยในบทความนี้ผมจะเปิดพอร์ททั้งหมดไปเลย กด Add port range… เพื่อไปต่อได้เลย

จะมีหน้าต่างขึ้นมา ผมเข้าใจว่า ณ ขณะนี้คุณพอมีข้อมูลอยู่แล้วว่าจะเปิดพอร์ทไหน (กรณีเล่นเกมก็ลองหาข้อมูลดู เพราะแต่ละเกมใช้พอร์ทไม่เหมือนกัน) แต่ในหน้าต่างนี้สามารถระบุโปรโตคอลได้ทั้ง TCP, UDP กรณีนี้ผมเลือก TCP และใส่พอร์ทตั้งแต่ 1 ถึง 65535 เพื่อเปิดทุกพอร์ท ใส่เสร็จแล้วกด Add ได้เลย

เราจะกลับมาหน้าจอนี้อีกครั้ง จะเห็นรายละเอียดพอร์ทที่เรากรอกไปทั้งหมด ให้กด Add Port Range.. อีกครั้งและทำเหมือนด้านบน แต่เปลี่ยนจากโปรโตคอล TCP เป็น UDP แทนเมื่อเรียบร้อยแล้วให้กดปุ่ม Save ด้านล่างได้เลย

เราจะกลับมาหน้าจอหลักอีกครั้ง ให้เลือกโปรไฟล์จากทางด้านซ้าย (ผมตั้งชื่อไว้ว่า All Port) และกด Use เราจะเห็นพอร์ทที่เราต้องการเปิด อยู่ในหน้าจอด้านบนทั้งหมด ถือว่าทำการเปิดพอร์ทได้สำเร็จครับ

วิธีการทดสอบว่าเราเปิดพอร์ทได้สำเร็จหรือไม่ ให้ลองเข้าไปที่เว็บไซต์ yougetsignal.com จะพบหน้าจอด้านล่าง

ให้กรอกหมายเลขพอร์ทที่ต้องการเช็คลงในตรงช่องสีแดงๆ ได้เลย และกดปุ่ม Check

หากมีคำว่า open โผล่มาดังภาพ แสดงว่าเราเปิดพอร์ทได้สำเร็จแล้วครับ หากขึ้น closed แสดงว่ายังไม่ได้เปิดพอร์ท ให้กลับไปเช็คว่าเราทำอะไรผิดพลาดรึเปล่า อย่าลืมว่าเราต้องเปิดโปรแกรมทิ้งไว้ตลอดเวลานะครับ และควรปิดหลังจากที่เราไม่ได้ใช้แล้วเพื่อความปลอดภัย

หวังว่าบทความนี้น่าจะพอมีประโยชน์สำหรับผู้ที่ต้องการเปิดพอร์ทสำหรับการใช้โปรแกรมหรือเล่นเกมนะครับ

บทความอื่นๆ ที่น่าสนใจ:

  • ไม่พบบทความใดๆ
:, , ,

1 Comment for this entry

  • golf

    เป็นประโยชน์มากๆ เลยครับ

    ขอบคุณสำหรับบทความดีๆ ครับ

ร่วมแสดงความคิดเห็น