คือต้องบอกก่อนว่า ผมเรียนจบเกมมิ่งโดยเฉพาะ ดังนั้นเรื่องพวก Networking จะไม่ค่อยรู้เรื่อง ดังนั้นโปรดฮ่าแตกนะครับ หากถามอะไรที่เปิ่นไป หรือเป็นคำถามที่ง่ายมากๆ แต่ไม่รู้ครับ ผมขอร้อง อย่าฮานะครับ...
ตอนนี้ผมมีอินเทอร์เน็ต 1 System แต่คราวนี้ใน 1 วงจร มี IP สมมุติหมายเลข 10.0.0.1 ในวงจรนี้มี PC ต่อเป็นเครือข่ายจำนวน 4 เครื่องซึ่งทั้ง 4 เครื่องนี้ก็ถูกจัด IP Address ใหม่เป็น 192.168.1.2-5 และสามารถใช้อินเทอร์เน็ตได้ แต่ปัญหาคือ เมื่อผมอยู่ที่ทำงาน มี IP 10.1.1.1 แล้วผมต้องการใช้ SSH ไป remote แต่ละเครื่อง 192.168.1.2-5 แต่ทำไม่ได้ เหตุเข้าใจว่าเป็น NAT และ DHCP Server ของตัว Router
อยากจะถามว่า มีทางไหนบ้างครับ ที่จะแก้ไขปัญหานี้โดยไม่ต้องติดตั้งอินเทอร์เน็ตใหม่ ให้แต่ละเครื่อง แล้วที่ Date Centre เขาทำกันอะไร หากมี Server เยอะขนาดนั้นครับ...
ขอบคุณครับ มันเป็น flight บังคับครับ พอดีกำลังเขียนเกมอยู่ แต่บอกเขียนมา multiplayer มันติดตรงนี้ครับ
on
Forward port
hisoft Fri, 24/05/2013 - 02:47
Forward port ให้แต่ละเครื่องครับ โดยให้ port ไม่ซ้ำกัน เช่น port 12, 13, 14, 15 คราวนี้พอ router ได้รับข้อมูลทาง port 12 มันก็จะส่งต่อไปให้เครื่องที่หนึ่ง และในทางเดียวกันสำหรับ port ที่เหลือ
ถ้ารายละเอียดยังน้อยเกินไปถามเป็นจุด ๆ มาครับ
ถ้าอย่างนั้นปัญหาต่อมาจะเป็น
iDan Fri, 24/05/2013 - 13:46
In reply to Forward port by hisoft
ถ้าอย่างนั้นปัญหาต่อมาจะเป็น Port ซ้ำครับ เพราะว่า ใช้ port เยอะมาก จะมีทางไหนบ้าง Forward IP ตรงไปเลย หรือต้องรอ IPv6 เพราะเห็นว่ามันแจกทั้ง LAN Address กับ IPv6 ตัวจริง
port
hisoft Fri, 24/05/2013 - 16:20
In reply to ถ้าอย่างนั้นปัญหาต่อมาจะเป็น by iDan
port ก็มีให้ใช้เยอะมากอยู่นะครับ ถ้าไม่อย่างนั้นผมคงแนะนำได้อีกสองทาง
load balance ตรงนี้ผมแนะนำต่อไม่ได้ แต่คือจะมีเครื่องนึงรับทั้งหมดเข้ามา (forward port เข้าเครื่องนึง) แล้วส่งกระจายงานต่อให้เครื่องอื่น
VPN ถ้าไม่อยากวุ่นวายมากก็ใช้ผ่าน Hamachi ครับ แล้วเครื่องที่อยู่นอกวงกับในวงจะได้ ip ชุดเดียวกันที่เข้าถึงโดยตรงได้ อย่าลืม forward port ให้ Hamachi แต่ละเครื่องไม่ให้ซ้ำกันด้วยนะครับ
ถ้าจำเป็นต้อง SSH แบบ specify
mr_tawan Fri, 24/05/2013 - 17:38
In reply to port by hisoft
ถ้าจำเป็นต้อง SSH แบบ specify ไปเลยว่าเครื่องไหนนี่ load balance คงไม่ใช่คำตอบครับ
ส่วน VPN ปรกติเขาใช้สำหรับเชื่อมเนทเวิร์คสองวงผ่านวงอินเตอร์เนท (หรือวงใหญ่ภายนอก) ถ้าใช้ในกรณีนี้อาจจะ overkill หรือเปล่า ? อันนี้ไม่แน่ใจ
ส่วนตัวผมยังมองว่าใช้ Port Forward น่าจะเป็นคำตอบที่ถูกต้อง (แต่อาจจะเหนื่อยหน่อย)
โห มันมีตั้ง 65,536 port
wichate Fri, 24/05/2013 - 17:54
In reply to ถ้าอย่างนั้นปัญหาต่อมาจะเป็น by iDan
โห มันมีตั้ง 65,536 port ให้เลือกใช้ ยังไม่พอก็ไม่ไหวแล้วมั๊งครับ
ปกติใน data center 1
bongikairu Fri, 24/05/2013 - 03:53
ปกติใน data center 1 เครื่องจะได้ 1 ip จริงเลยหน่ะครับ เลยไม่ค่อยมีปัญหาอะไร
ปล. สงสัยครับว่าเครื่อง 4 เครื่องนั้นเป็น client หรือว่า sever หรือว่าทำ peer-to-peer ?
เป็น Server ครับ เพราะ
iDan Fri, 24/05/2013 - 13:43
In reply to ปกติใน data center 1 by bongikairu
เป็น Server ครับ เพราะ ผมต้องการทำในแบบ Large scale ครับ พอดีต้องการให้มันได้ IP จริงๆ ของใครมัน..
ไม่เหลืออะไรให้ตอบละ =_=
Perl Fri, 24/05/2013 - 11:28
ไม่เหลืออะไรให้ตอบละ =_=
Static IP x1 <---> Server
Architec Fri, 24/05/2013 - 14:09
Static IP x1 <---> Server x4
1.ทำนองเดียวกับ Windows ที่ทำ NLB แล้วอยากให้มัน Remote Desktop ได้ทุกเครื่องโดยที่ใช้ IP ภายนอกแค่ตัวเดียวสินะ
(ผมทำไม่เป็นอ่ะ) ลอง VPN ดูครับ -*-
2.แต่ถ้าเป็น IP ภายในอยากจะ SSH เข้าไปในเครื่อง Server อันนี้ผมไม่ทราบครับ = = นอกจากว่าถ้า Server มันมี Ethernet อีกพอร์ตนึงเอาไว้ให้ Admin เข้าจากทางด้านหลังได้ อันนี้จะสะดวกมากกว่าเยอะเลยครับ
ปกติแค่ server 1 ตัวผ่าน nat
bongikairu Fri, 24/05/2013 - 16:09
ปกติแค่ server 1 ตัวผ่าน nat นี่ก็เหนื่อยอยู่พอควรแล้วนะ (บน AWS ยังดีที่โปรแกรมที่ใช้มัน force external IP ได้) 4 ตัวนี่ท่าทางจะยากอยู่ พอจะบอกได้ไหมครับว่า server แต่ละตัวเปิดกันตัวละกี่ port และสามารถเปลี่ยน port ได้ไหม
นอกเรื่อง คุณ iDan จบ Gaming
mr_tawan Fri, 24/05/2013 - 17:38
นอกเรื่อง คุณ iDan จบ Gaming ที่ไหนเหรอครับ ?
Higher Diploma in Interactive
iDan Fri, 24/05/2013 - 22:58
In reply to นอกเรื่อง คุณ iDan จบ Gaming by mr_tawan
Higher Diploma in Interactive Gaming Design (Research Programme), University of Cambridge
(Top-Up) WSQ Advanced Certificate in Game Development (Game Programming), DigiPen Singapore
BSc Hons. in Games Design and Development, University of Greenwich (กำลังเรียนแผนปี1 ครับ)
น่าสนใจดีครับ ผมมีเพื่อนร่วมง
mr_tawan Sat, 25/05/2013 - 16:25
In reply to Higher Diploma in Interactive by iDan
น่าสนใจดีครับ
ผมมีเพื่อนร่วมงานสมัยยังทำงานเกมอยู่ (นานละ 6 ปีที่แล้วโน่น) จบด้าน GD ที่แคนาดา (และเจ้านายเก่าของผมก็เคยทำงานที่ Ubisoft มาก่อน :))
นอกเรื่องรอบที่สอง : ถ้าเล่น FB แล้วสนใจอยากคุยกับ Game Dev ในไทยก็ลอง join group https://www.facebook.com/groups/thaigamepad/ ดูนะครับ มีคนเยอะอยู่
ถามก่อนนะครับ ไอ้พีซี 1-5
mr_tawan Fri, 24/05/2013 - 17:49
ถามก่อนนะครับ ไอ้พีซี 1-5 เนี่ย เป็น client หรือ server ?
ถ้าเป็น server มีกรณีเดียวครับ port forward ที่จริงพวก Web App ที่เป็น Java เขาก็ใช้ port forward เหมือนกัน (แต่เขาใช้ server ตัวนึงทำตัวเป็น proxy)
ถ้าเป็น client เนี่ย NAT น่าจะทำงานได้นะครับ ?
คือปรกติแล้วตัว client จะเป็นคนต่อเข้า server แล้วสร้าง connection ขึ้น แต่ในกรณีที่คุณ iDan ว่ามามันกลับกัน ดังนั้นผมก็เดาว่าไอ้สี่เครื่องนั่นเป็น server แต่ว่าพอบอกว่าเป็น multi-player game มันก็ไม่เข้าเค้าอีก ... แอบบงงนิด ๆ 555
ประเด็นคือ มันเป็น Server 4
iDan Fri, 24/05/2013 - 22:53
In reply to ถามก่อนนะครับ ไอ้พีซี 1-5 by mr_tawan
ประเด็นคือ มันเป็น Server 4 เครื่องแต่คราวนี้เนี่ยผมมาตันตรงที่ไอ้เพื่อนร่วมงานผม มันกำลังบ้า Cloud Computing ด้วยความที่ว่า เราก็ไม่ค่อยเป็นเกี่ยวกับ Network อยู่แล้ว ตอนนี้ผมมี Server อยู่ 4 ตัว ตัวหนึ่งเป็น NAS เก็บงานของผมอยู่ แล้วที่เหลือจะลองจำลองเป็น Private Cloud ดูจำนวน 2 เครื่อง อีกตัวเอาไว้ลองเปรียบเทียบ Game Server ปกติ เพื่อก็จะบอกหาคำตอบเกี่ยวกับสิ่งที่เกิดขึ้นกับ เกมบางเกมในตอนนี้
โดยปกติแล้ว Game ตะวันตกเนี่ย มันใช้อย่างต่ำเนี่ยก็ไม่ใช่น้อยๆ เช่น Crysis 3 ใช้ TCP - 1024-1124, 3074, 9946, 9960-9969, 13000-13100, 18000, 18120, 18060, 27900, 28910, 29900, 42100 และ UDP - 1024-1124, 3074, 3659, 6000, 18000, 29900 พอมันใช้เยอะ แล้วถ้าใช้ 2 WAN IP มันไม่ใช่ปัญหา แต่พอเมื่อมันมีแค่ IP เดียว เราจึงควรใช้ทรัพยากรที่มีอยู่ให้เกิดประโยชน์ขึ้น และเพื่อไม่ให้มันกระทบกับเงินในกระเป๋าที่ฉีกไปแล้ว เนื่องจากผมดันถอย Server ไปเมื่อเดือนที่แล้วพร้อมกัน 2 เครื่อง T_T ผมเลยมีข้อจำกัดครับ แล้วถ้ากำหนด Port ยิ่งมาก งานจะยิ่งบาน แล้วปัญหาจะตามมานะคร๊าบ T_T แล้วหากจะไปขอ ISP เปิดอีก 1 Line แค่ไม่กี่วันก็กระไรอยู่
ผมเลยคิดว่า เอาว่ะ ไหนๆ ก็ไหนๆ แล้ว ผมขอลองทำ Home Cloud Computing ดูบ้าง แต่พอเริ่มศึกษา ผมก็เริ่มงง พอเริ่มงง ก็เริ่มถาม เลยถามใน Blognone ดู เพราะเห็นมี Professional Networker มากมายครับ ใครมีอะไรจะแชร์เกี่ยวกับ Cloud เชิญเต็มที่ครับ ต้องการข้อมูลอย่างมาก เพื่อ Know-How ของผมครับ
เกมที่กำลังจะพัฒนาก็ประมาณ Ingress ครับ ความจริงผมคิดเกมแนว Ingress ได้ตั้งแต่ตอนเรียน ปวส. เทอม 2 ปี 1 ครับ ตอนนั้นเรียนเกี่ยวกับ Interactive Games Fundamentals เพียงตอนนั้น พัฒนาบน Nintendo 3DS แล้วเล่นด้วยกันครับ แล้วมีการ์ดเป็น QR Code ไว้เพิ่มของครับ ยังไม่ได้ประมาณนี้ครับ สาเหตุที่ทำบน Nintendo เพราะว่า Nintendo เพิ่งออก 3DS ครับ
แล้วอีกคำถามคือ แล้วอย่าง Amazon AWS ที่เขา IP เรามานั้นเป็น IP จริงหรือครับ?? ถ้าอย่างนั้น เขาคงจะมีวงจร IP เยอะมาก (ผมเข้าใจว่า 1 IP = 1 Subscriber ครับ) หรือว่า เขาทำมี Server ที่ใช้ชี้ Virtual Server อีกที่เหรอครับ..
ประมาณว่า Router
suwijakza Sat, 25/05/2013 - 00:22
In reply to ประเด็นคือ มันเป็น Server 4 by iDan
ประมาณว่า Router ที่เชื่อมต่ออินเทอร์เน็ตนั้น สามารถแจก IP จริงให้เราได้ จำกัดสูงสุดคือ 4 IP (ละมั้ง ตามแต่ผู้ให้บริการอินเทอร์เน็ต [อาจจะสามารถจ่ายตังเพิ่มเพื่อเพิ่มไอพีได้])
1-3 โดนใช้แล้ว เหลือแค่ IP ที่ 4 ที่ยังเหลือว่างอยู่
IP ที่ 4 เชื่อมต่อไปที่ PC อีก 4-5 เครื่อง แต่ว่าอยากจะให้ ทั้ง 4-5 เครื่องนี้ เป็นไอพีจริงทั้งหมดเลย?? ผมเข้าใจถูกไหมครับ??
ประมาณนี้ครับ
iDan Sat, 25/05/2013 - 02:36
In reply to ประมาณว่า Router by suwijakza
ประมาณนี้ครับ วาดรูปให้ดูเลย
ถ้ารูปมันเล็กคลิ๊กขยายได้นะครับ
Forward Port
suwijakza Sat, 25/05/2013 - 04:54
In reply to ประมาณนี้ครับ by iDan
Forward Port ไม่ได้เลยหรอครับ
198.168.1.1 = 55.55.208.179 ||เครื่องเดียวกัน
เข้าไปตั้งค่าใน 198.168.1.1 ให้ forward port ไปประมาณว่า
55.55.208.179:1 -> 192.168.1.2:22
55.55.208.179:2 -> 192.168.1.3:22
55.55.208.179:3 -> 192.168.1.4:22
55.55.208.179:3 -> 192.168.1.5:22
//Port บน Router ยังไงก็ใช้ไม่เยอะเท่า PC หรือ Server แน่ๆครับ ส่วนมากใช้อยู่แค่ Port 80 เท่านั้น
อันนั้นเป็น domain
McKay Sat, 25/05/2013 - 02:42
In reply to ประเด็นคือ มันเป็น Server 4 by iDan
อันนั้นเป็น domain forwarding(Reverse Proxy) หน่ะครับ จะใช้ไม่ได้กับกรณีที่ specific IP (หรือได้หว่า ไม่เคยทำเหมือนกัน)
(disclaimer)
mr_tawan Sat, 25/05/2013 - 16:36
In reply to ประเด็นคือ มันเป็น Server 4 by iDan
(disclaimer) ผมไม่ใช่สายเนทเวิร์คนะครับ อาจจะเข้าใจผิด ออกตัวก่อนเดี๋ยวเชื่อแล้วทำตามปรากฎว่าเจ๊งแล้วมาอย่ามาโทษผมนะ 555
เท่าที่ผมรู้ ถ้าจะตั้งเป็น Cloud เลยเนี่ย Server ทั้ง 4 ตัวจะทำงานเหมือนกันหรือใกล้เคียงกัน ซึ่งเป็นการทำ load balancing ดังนั้นก็ต้องมี server หนึ่งตัวเป็นตัวกระจายงานให้กับ server ทั้งสี่ตัวน่ะครับ
แต่ถ้าเราเขียนให้ server สี่ตัวทำงานใครงานมันเลยเนี่ย port forward น่าจะง่ายกว่านะ
ปล. คหสต.นะครับ ผมว่าการรีบไปซื้อ Server มาลงเลย (ซึ่งแพงชะมัดยาด) ถึง 4 ตัวเนี่ยเป็นเรื่องไม่ควรทำนะ แพงเกิน 55 ผมคิดว่าระหว่างการพัฒนาเริ่มต้นเนี่ยควรเริ่มจากใช้ VM ก่อนน่ะครับ แล้วถ้าระบบมันเริ่มไม่ไหวแล้วค่อยหา server มาเพิ่มน่าจะดีกว่าครับ ผมว่าเราควรจะมี proof of concept ก่อนถึงจะเริ่มลงทุนจริงจังนะ ไม่งั้นขาดทุนแย่ :)
ที่จริงระบบที่เขารันบนธุรกิจเลยเขาก็ใช้ VM นะ
ดังนั้นโปรดฮ่าแตกนะครับ
panurat2000 Fri, 24/05/2013 - 23:12
ดังนั้นโปรดฮ่าแตกนะครับ ?
กำลังจะพิมพ์ว่า อย่าฮาแตกครับ
iDan Fri, 24/05/2013 - 23:47
In reply to ดังนั้นโปรดฮ่าแตกนะครับ by panurat2000
กำลังจะพิมพ์ว่า อย่าฮาแตกครับ ขอโทษด้วยจริงๆ ครับ..
คร่าวๆนะครับ บนพื้นฐานว่า
SuperBancha Sat, 25/05/2013 - 16:48
คร่าวๆนะครับ บนพื้นฐานว่า เข้ามา 1 IP แล้วก็แจกงานไปหลายๆเครื่อง ช่วยกันทำงาน+รับ load
ผมใช้ HA Proxy ครับ http://haproxy.1wt.eu/
---> Server 1 ---> HA Proxy ---> Server 2 ---> Server 3HA Proxy IP Address มี 2 IP public 10.0.0.1 (ตามที่คุณสมมติ) กับ IP internal 192.168.1.1
Server 1,2,3 ก็มี internal IP เป็น 192.168.1.11, 192.168.1.12, ... เรียงไปเรื่อย (เป็น 100 ตัวก็ได้)
แล้วก็ config NFS Server ขึ้นมาตัวหนึ่ง อยู่ที่ 192.168.1.3 (เราเว้น 192.168.1.2 - 192.168.1.10 ไว้เพื่อสิ่งนี้) มาใช้เป็น Share Storage เก็บโปรแกรมและข้อมูลที่ใช้ร่วมกัน Server 1,2,3 ก็ร่วมกันใช้ที่นี่แหละ
ส่วนการ config IP, port ต่างๆที่จะ load แบ่งกัน ก็มา config ที่ HA Proxy ที่เดียว
ส่วน Virtual ผมใช้ XenServer ครับ
เบื้องต้นก็แค่นี้ครับ ลองศึกษาดูครับ
ใช่แล้ว อันนี้เลย!!
iDan Sat, 25/05/2013 - 18:24
In reply to คร่าวๆนะครับ บนพื้นฐานว่า by SuperBancha
ใช่แล้ว อันนี้เลย!! แม้ผมยังงงๆ แต่เดี๋ยวศึกษาลองตั้งขึ้นมาดูก่อนครับ ขอบคุณมากคเลยรับ :D
เพิ่มเติมให้ครับ ลง ssh
SuperBancha Sun, 26/05/2013 - 00:59
In reply to คร่าวๆนะครับ บนพื้นฐานว่า by SuperBancha
เพิ่มเติมให้ครับ ลง ssh server ไว้ที่ Server ทุกตัว แล้วก็ลงที่ตัว HA Proxy ด้วย แล้วพอเรา ssh เข้ามาที่ตัว HA Proxy เราก็จะสามารถ ssh ต่อไปที่ Server1 192.168.1.11, Server2 192.168.1.12, ... ต่อไปเรื่อยๆได้อยู่แล้วครับ
คงต้องทดลองหัดใช้ Virtual ให้คล่องก่อนครับ เพราะต้องใช้เครื่องเยอะเหลือเกิน ไม่พอใช้+ทดสอบ
ใช้ upnp port mapping
jirayu Sat, 25/05/2013 - 17:06
ใช้ upnp port mapping ได้หรือเปล่าครับ เหมือนจะเคยเห็นใน desc ในโปรแกรมบิตว่าให้เปิดอันนี้ถ้า fwd port ไม่ได้
upnp อันนั้นมันก็คือ port
hisoft Sat, 25/05/2013 - 18:08
In reply to ใช้ upnp port mapping by jirayu
upnp อันนั้นมันก็คือ port forward นี่แหละครับ เพียงแต่แทนที่เราจะตั้งค่าเอง ทางโปรแกรมจะส่งเรื่องขอ forward port ไปให้ router ดำเนินการให้เอง