พร็อกซีเซิร์ฟเวอร์และพร็อกซีเซิร์ฟเวอร์ย้อนกลับต่างกันอย่างไร
พร็อกซีเซิร์ฟเวอร์และพร็อกซีเซิร์ฟเวอร์ย้อนกลับต่างกันอย่างไร
คำตอบ:
คำตอบก่อนหน้านี้ถูกต้อง แต่อาจสั้นเกินไป ฉันจะพยายามเพิ่มตัวอย่าง
ก่อนอื่นคำว่า "พร็อกซี" อธิบายถึงบุคคลหรือสิ่งที่กระทำในนามของบุคคลอื่น
ในขอบเขตของคอมพิวเตอร์เรากำลังพูดถึงเซิร์ฟเวอร์หนึ่งตัวที่ทำหน้าที่แทนคอมพิวเตอร์เครื่องอื่น
สำหรับจุดประสงค์ในการเข้าถึงข้อมูลฉันจะ จำกัด การอภิปรายของฉันไว้ในเว็บพร็อกซี - อย่างไรก็ตามความคิดของพร็อกซีไม่ได้ จำกัด อยู่ที่เว็บไซต์
การอภิปรายส่วนใหญ่ของเว็บพร็อกซี่หมายถึงประเภทของพร็อกซี่ที่รู้จักกันในชื่อ
เหตุการณ์พร็อกซีในกรณีนี้คือ "การส่งต่อพร็อกซี" ดึงข้อมูลจากเว็บไซต์อื่นในนามของผู้ร้องขอต้นฉบับ
ตัวอย่างเช่นฉันจะแสดงคอมพิวเตอร์สามเครื่องที่เชื่อมต่อกับอินเทอร์เน็ต
โดยปกติจะเชื่อมต่อโดยตรงจาก X --> Z.
อย่างไรก็ตามในบางสถานการณ์มันจะดีกว่าสำหรับY --> Z
ในนามของซึ่งโซ่ดังต่อไปนี้:X
X --> Y --> Z
นี่คือรายการบางส่วน (มาก) ของการใช้พร็อกซีเซิร์ฟเวอร์ไปข้างหน้า:
1) X ไม่สามารถเข้าถึง Z ได้โดยตรงเนื่องจาก
a) ผู้ที่มีอำนาจในการจัดการX
การเชื่อมต่ออินเทอร์เน็ตได้ตัดสินใจที่จะบล็อกการเข้าถึงเว็บไซต์Z
ทั้งหมด
ตัวอย่าง:
ไวรัส Storm Worm แพร่กระจายโดยหลอกให้ผู้คนเข้าเยี่ยมชมfamilypostcards2008.com
ดังนั้นผู้ดูแลระบบจึงบล็อกการเข้าถึงเว็บไซต์เพื่อป้องกันไม่ให้ผู้ใช้ติดไวรัสโดยไม่ตั้งใจ
พนักงานใน บริษัท ใหญ่เสียเวลามากเกินไปfacebook.com
ดังนั้นฝ่ายบริหารจึงต้องการบล็อกการเข้าถึงระหว่างเวลาทำการ
โรงเรียนประถมศึกษาในท้องถิ่นไม่อนุญาตให้เข้าถึงอินเทอร์เน็ตในplayboy.com
เว็บไซต์
wikipedia.org
รัฐบาลไม่สามารถควบคุมการเผยแพร่ของข่าวจึงควบคุมการเข้าถึงข่าวแทนโดยเว็บไซต์เช่นการปิดกั้น ดูTORหรือFreenet
ข) ผู้ดูแลระบบของได้ปิดกั้นZ
X
ตัวอย่าง:
ผู้ดูแลระบบของ Z สังเกตเห็นความพยายามในการแฮ็คที่มาจาก X ดังนั้นผู้ดูแลระบบจึงตัดสินใจปิดกั้นที่อยู่ IP ของ X (และ / หรือ Netrange)
Z เป็นเว็บไซต์ฟอรัม X
กำลังส่งสแปมฟอรัม บล็อก Z
สำหรับตัวอย่างนี้ฉันจะแสดงรายการคอมพิวเตอร์สามเครื่องที่เชื่อมต่อกับอินเทอร์เน็ต
โดยปกติจะเชื่อมต่อโดยตรงจาก X --> Z.
อย่างไรก็ตามในบางสถานการณ์จะเป็นการดีกว่าสำหรับผู้ดูแลระบบในZ
การ จำกัด หรือไม่อนุญาตการเข้าถึงโดยตรงและบังคับให้ผู้เยี่ยมชมผ่าน Y ก่อน ดังนั้นเมื่อก่อนเราได้ข้อมูลที่ถูกดึงโดยY --> Z
ในนามของซึ่งโซ่ดังต่อไปนี้:X
X --> Y --> Z
สิ่งที่แตกต่างในเวลานี้เมื่อเปรียบเทียบกับ "พร็อกซีการส่งต่อ" คือเวลานี้ผู้ใช้X
ไม่ทราบว่าเขากำลังเข้าถึงZ
เนื่องจากผู้ใช้X
เห็นว่าเขากำลังสื่อสารอยู่Y
เท่านั้น เซิร์ฟเวอร์Z
ไม่สามารถมองเห็นลูกค้าได้และมีเพียง reverse proxy เท่านั้นที่Y
สามารถมองเห็นได้จากภายนอก reverse proxy ต้องการการกำหนดค่า (proxy) ที่ฝั่งไคลเอ็นต์
ลูกค้าX
คิดว่าเขาเพียงแค่สื่อสารกับY
( X --> Y
) แต่ความจริงคือY
การส่งต่อการสื่อสารทั้งหมด ( X --> Y --> Z
อีกครั้ง)
ในสถานการณ์ดังกล่าวข้างต้นมีความสามารถในการเลือกZ
Y
(X --> Y) --> Z
X --> (Y --> Z)
คู่ของคำจำกัดความง่าย ๆ คือ:
ส่งต่อพร็อกซี: ทำหน้าที่ในนามของผู้ร้องขอ (หรือผู้บริโภคบริการ)
Reverse Proxy: ทำหน้าที่ในนามของผู้ให้บริการ / ผู้ผลิตเนื้อหา
ฉันพบว่าแผนภาพด้านล่างมีประโยชน์มาก เพียงแสดงสถาปัตยกรรมของการตั้งค่าพร็อกซีไปข้างหน้าและย้อนกลับจากไคลเอนต์ไปยังเซิร์ฟเวอร์ผ่านทางอินเทอร์เน็ต ภาพนี้จะช่วยให้คุณเข้าใจคำตอบของ qyb2zm302และคำตอบอื่น ๆ ได้ดีขึ้น
คุณสามารถดูวิดีโอนี้จากDevCentralของF5โดย Peter Silva
แหล่งที่มาของภาพ: Quora อย่างไรก็ตามตามPieters Martijnภาพนี้อาจมาจากPulse Secure Communityหรือเว็บไซต์ Julien Pauli (ภาษาฝรั่งเศส) ที่ developpez.com
มันทำให้ฉันนึกถึงสุภาษิตคลาสสิค:
รูปภาพมีมูลค่า 1,000 คำ
Forward Proxy vs. Reverse Proxy (2012) อธิบายความแตกต่างระหว่างการส่งต่อและการย้อนกลับอย่างชัดเจน
คำตอบของ qyb2zm302 มีรายละเอียดการใช้งานของพร็อกซี่อย่างชัดเจน แต่มันลื่นไถลบนแนวคิดพื้นฐานระหว่างไปข้างหน้าและย้อนกลับพร็อกซี่ สำหรับ reverse proxy, X → Y → Z, X รู้เกี่ยวกับ Y และไม่ใช่ Z แทนที่จะเป็นตรงกันข้าม
พร็อกซีเป็นเพียงตัวกลางสำหรับการสื่อสาร (ร้องขอ + การตอบกลับ) ไคลเอนต์ <-> Proxy <-> เซิร์ฟเวอร์
พร็อกซีทำหน้าที่ในนามของลูกค้า ลูกค้ารู้เกี่ยวกับเครื่องจักรทั้งสามเครื่องที่เกี่ยวข้องในห่วงโซ่ เซิร์ฟเวอร์ไม่ได้
พร็อกซีทำหน้าที่ในนามของเซิร์ฟเวอร์ ไคลเอ็นต์รู้เกี่ยวกับพร็อกซีเท่านั้น เซิร์ฟเวอร์รู้ทั้งห่วงโซ่
สำหรับฉันแล้วการส่งต่อและย้อนกลับเป็นเพียงชื่อที่สับสนขึ้นอยู่กับมุมมองสำหรับไคลเอ็นต์และพร็อกซีเซิร์ฟเวอร์ ฉันขอแนะนำให้ละทิ้งอดีตเพื่อหลังเพื่อการสื่อสารที่ชัดเจน
แน่นอนว่าการทำให้เรื่องซับซ้อนมากขึ้นไม่ใช่ว่าทุกเครื่องจะเป็นไคลเอนต์หรือเซิร์ฟเวอร์ หากมีความกำกวมในบริบททางที่ดีที่สุดคือการระบุอย่างชัดเจนว่าที่พร็อกซีอยู่ที่ใดและการสื่อสารที่ช่องทางนั้น
ไดอะแกรมบางอย่างอาจช่วย:
ส่งต่อพร็อกซี
ย้อนกลับพร็อกซี
ความแตกต่างส่วนใหญ่ในการปรับใช้ ไปข้างหน้าและย้อนกลับผู้รับมอบฉันทะทุกคนมีคุณสมบัติพื้นฐานที่เหมือนกัน พวกเขายอมรับคำขอสำหรับคำขอ HTTP ในรูปแบบต่าง ๆ และให้การตอบสนองโดยปกติแล้วจะเข้าถึงเซิร์ฟเวอร์ต้นทางหรือเซิร์ฟเวอร์ผู้ติดต่อ
เซิร์ฟเวอร์ที่มีคุณลักษณะครบถ้วนมักจะมีการควบคุมการเข้าถึงการแคชและคุณลักษณะการแมปลิงค์บางอย่าง
พร็อกซีการส่งต่อคือพร็อกซีที่เข้าถึงได้โดยการกำหนดค่าเครื่องไคลเอนต์ ลูกค้าต้องการการสนับสนุนโปรโตคอลสำหรับคุณสมบัติพร็อกซี่ (การเปลี่ยนเส้นทางการตรวจสอบความถูกต้องของพร็อกซี ฯลฯ ) พร็อกซีมีความโปร่งใสต่อประสบการณ์การใช้งานของผู้ใช้
พร็อกซีย้อนกลับคือพร็อกซีที่ปรับใช้เป็นเว็บเซิร์ฟเวอร์และทำงานเหมือนเว็บเซิร์ฟเวอร์ยกเว้นว่าจะเขียนเนื้อหาจากโปรแกรมและดิสก์ในเครื่องมันจะส่งต่อคำขอไปยังเซิร์ฟเวอร์ต้นทาง จากมุมมองของลูกค้ามันเป็นเว็บเซิร์ฟเวอร์ดังนั้นประสบการณ์ของผู้ใช้จึงโปร่งใสอย่างสมบูรณ์
ในความเป็นจริงอินสแตนซ์ของพร็อกซีเดียวสามารถเรียกใช้เป็นพร็อกซีไปข้างหน้าและย้อนกลับในเวลาเดียวกันสำหรับลูกค้าที่แตกต่างกัน
พร็อกซี: มันคือการทำให้การร้องขอในนามของลูกค้า ดังนั้นเซิร์ฟเวอร์จะตอบกลับไปยังพร็อกซีและพร็อกซีจะส่งต่อการตอบกลับไปยังลูกค้า ในความเป็นจริงเซิร์ฟเวอร์จะไม่ "เรียนรู้" ว่าใครเป็นลูกค้า (ที่อยู่ IP ของลูกค้า); มันจะได้รู้ว่าพร็อกซี่ อย่างไรก็ตามไคลเอนต์รู้เซิร์ฟเวอร์เป็นอย่างดีเนื่องจากเป็นรูปแบบคำขอ HTTP ที่กำหนดไว้สำหรับเซิร์ฟเวอร์เป็นหลัก แต่มันก็มอบให้พร็อกซี
ย้อนกลับพร็อกซี: มันได้รับการร้องขอในนามของเซิร์ฟเวอร์ มันส่งต่อการร้องขอไปยังเซิร์ฟเวอร์ได้รับการตอบสนองแล้วส่งกลับการตอบสนองไปยังลูกค้า ในกรณีนี้ลูกค้าจะไม่ "เรียนรู้" ซึ่งเป็นเซิร์ฟเวอร์จริง (ที่อยู่ IP ของเซิร์ฟเวอร์) (ยกเว้นบางอย่าง); มันจะได้รู้ว่าพร็อกซี่ เซิร์ฟเวอร์จะทราบหรือไม่รู้จักไคลเอ็นต์จริงขึ้นอยู่กับการกำหนดค่าของ reverse proxy
คำอธิบายที่ดีที่สุดอยู่ที่นี่พร้อมไดอะแกรม:
ในขณะที่พร็อกซี่ข้างหน้าผู้รับมอบฉันทะในนามของลูกค้า(หรือโฮสต์ขอ)เป็นพร็อกซี่กลับผู้รับมอบฉันทะในนามของเซิร์ฟเวอร์
ในขณะที่พร็อกซีฟอร์เวิร์ดซ่อนตัวตนของลูกค้าพร็อกซีย้อนกลับจะซ่อนตัวตนของเซิร์ฟเวอร์
พร็อกซีเซิร์ฟเวอร์พร็อกซี่ (และแคชทางเลือก) คำขอเครือข่ายขาออกไปยังแหล่งข้อมูลสาธารณะต่างๆที่ไม่จำเป็นต้องใช้ผ่านอินเทอร์เน็ต พร็อกซีย้อนกลับจับการร้องขอขาเข้า (และแคชทางเลือก) จากอินเทอร์เน็ตและกระจายไปยังทรัพยากรส่วนตัวภายในต่างๆโดยปกติจะมีจุดประสงค์เพื่อความพร้อมใช้งานสูง
Cloudflareมีบทความที่ยอดเยี่ยมพร้อมรูปภาพอธิบายในรายละเอียด
ตรวจสอบที่นี่: Reverse proxy คืออะไร? | พร็อกซีเซิร์ฟเวอร์อธิบาย
พร็อกซี (Forward Proxy):
เมื่อคอมพิวเตอร์บน LAN ของคุณเชื่อมต่อกับพร็อกซีเซิร์ฟเวอร์ที่เข้าถึงอินเทอร์เน็ต สิทธิประโยชน์รวมถึงเซิร์ฟเวอร์ที่ถูกเปิดเผยต่ออินเทอร์เน็ตเท่านั้น คนที่อยู่ด้านนอกไม่สามารถเข้าถึงคอมพิวเตอร์ได้โดยตรง ส่งต่อผู้รับมอบฉันทะสามารถปรับปรุงการเข้าถึงอินเทอร์เน็ตสำหรับผู้ใช้โดยแคชดาวน์โหลด พวกเขายังสามารถใช้เพื่อ จำกัด การเข้าถึงบางเว็บไซต์ นอกจากนี้พร็อกซีเซิร์ฟเวอร์เท่านั้นจะต้องมีที่อยู่สาธารณะไม่ใช่ลูกค้าที่เชื่อมต่อกับมัน
Reverse Proxy:
reverse proxy เป็นตรงกันข้ามกับ forward proxy แต่จะทำหน้าที่เป็นพร็อกซีแทนเซิร์ฟเวอร์ที่เชื่อมต่ออยู่ แทนที่จะเข้าถึงเซิร์ฟเวอร์ระยะไกลโดยตรงผู้ใช้จะผ่านพร็อกซีย้อนกลับและเข้าสู่เซิร์ฟเวอร์ที่เหมาะสมจากที่นั่น พร็อกซีย้อนกลับเท่านั้นที่จะต้องใช้ใบรับรอง SSL จะต้องใช้ที่อยู่ IP สาธารณะเดียวเท่านั้นและสามารถจัดการสมดุลภาระการร้องขอที่เข้ามาเพื่อเพิ่มประสบการณ์ผู้ใช้โดยรวม
แหล่งที่มาของรูปภาพ: การสร้าง Forward Proxy โดยใช้การร้องขอเส้นทาง
ความเข้าใจของฉันจากApacheคือพร็อกซีนั้นหมายความว่าหากไซต์ x พร็อกซีสำหรับไซต์ y ดังนั้นขอให้ x ส่งคืน y
reverse proxy หมายความว่าการตอบสนองจาก y ถูกปรับเพื่อให้การอ้างอิงทั้งหมดเป็น y กลายเป็น x
เพื่อที่ผู้ใช้จะไม่สามารถบอกได้ว่ามีพร็อกซีเกี่ยวข้อง
ตามความเข้าใจของฉัน ...
เมื่อต้องการเริ่มต้นด้วยพร็อกซีทุกคนรู้ว่าหมายถึง "อำนาจในการเป็นตัวแทนของคนอื่น" ขณะนี้มีสองสิ่งคือส่งต่อและย้อนกลับ proxy
สมมติว่าคุณต้องการเข้าถึง "Google" และ "Google" ในทางกลับกันจะมีจำนวนเซิร์ฟเวอร์ที่จะตอบสนองต่อคำขอนั้น
ในกรณีนี้ในขณะที่คุณกำลังขอบางสิ่งจาก Google และคุณไม่ต้องการให้ Google เห็นที่อยู่ IP ของคุณคุณจะใช้การส่งต่อพร็อกซีดังที่อธิบายไว้ด้านล่าง
A → B → C
ตอนนี้ที่นี่คุณคือ A ส่งคำขอผ่านทาง B ดังนั้น C จะคิดว่าคำขอมาจาก B ไม่ใช่ A ในวิธีนี้คุณสามารถป้องกันไม่ให้ที่อยู่ IP ของลูกค้าของคุณไม่ได้สัมผัสกับโลกภายนอก
ในกรณีนี้เพื่อให้คุณเข้าใจเราจะดำเนินการกรณีส่งต่อพร็อกซีเดียวกัน ที่นี่คุณได้ขอสิ่งที่ Google ซึ่งจะส่งคำขอหนึ่งไปยังเซิร์ฟเวอร์แอพหรือพร็อกซีเซิร์ฟเวอร์อื่นเพื่อรับการตอบกลับ ดังนั้นสิ่งเหล่านี้จะเกิดขึ้นตามที่อธิบายไว้ด้านล่าง
A → B → C
C → D
C ← D
A ← B ← C
จากแผนภาพด้านบนคุณจะเห็นว่าคำขอได้ถูกส่งไปยัง C จาก B ไม่ใช่จาก A จากนั้น C จะมีหนึ่งคำขอที่ส่งไปยัง D. ในทำนองเดียวกันการตอบสนองจะไปที่ C จาก D และ B และ A
แผนภาพด้านบนกล่าวว่าเป็นเพียงบริบทที่มีความสำคัญแม้ว่าผู้รับมอบฉันทะทั้งสองกำลังทำหน้าที่ในลักษณะเดียวกัน แต่พร็อกซีฝั่งไคลเอ็นต์กำลังซ่อนข้อมูลลูกค้าในขณะที่พร็อกซีฝั่งเซิร์ฟเวอร์จะซ่อนข้อมูลฝั่งเซิร์ฟเวอร์
ส่งต่อผู้รับมอบสิทธิ์ไม่เปิดเผยตัวตนของลูกค้า (เช่นคิดว่าTor )
Reverse proxyมอบการไม่เปิดเผยตัวตนของเซิร์ฟเวอร์ปลายทาง (เช่นคิดว่าเซิร์ฟเวอร์ที่อยู่เบื้องหลัง DMZ)
นี่คือตัวอย่างของ reverse proxy (เป็น load balancer)
ไคลเอนต์ท่องไปที่ website.com และเซิร์ฟเวอร์ที่เข้าชมมีพร็อกซีย้อนกลับที่ทำงานอยู่ พร็อกซีกลับเกิดขึ้นเป็นปอนด์ Pound ใช้การร้องขอและส่งไปยังหนึ่งในสามแอปพลิเคชันเซิร์ฟเวอร์ที่อยู่ด้านหลัง ในตัวอย่างนี้ Pound เป็นตัวโหลดบาลานซ์ นั่นคือมันเป็นการสร้างสมดุลระหว่างโหลดแอพพลิเคชันสามเซิร์ฟเวอร์
แอ็พพลิเคชันเซิร์ฟเวอร์ให้บริการเนื้อหาเว็บไซต์กลับไปยังไคลเอ็นต์
ส่งต่อพร็อกซีให้บริการผู้ใช้ : ช่วยให้ผู้ใช้เข้าถึงเซิร์ฟเวอร์
พร็อกซีกลับให้บริการเซิร์ฟเวอร์ : มันปกป้องเซิร์ฟเวอร์จากผู้ใช้
หากไม่มีพร็อกซี
หากต้องการดูจากฝั่งไคลเอ็นต์และฝั่งเซิร์ฟเวอร์เหมือนกัน:
ไคลเอ็นต์ -> เซิร์ฟเวอร์
หนังสือมอบฉันทะ
จากฝั่งไคลเอ็นต์:
ไคลเอ็นต์ -> พร็อกซี -> เซิร์ฟเวอร์
จากฝั่งเซิร์ฟเวอร์:
ไคลเอ็นต์ -> เซิร์ฟเวอร์
ย้อนกลับพร็อกซี
จากฝั่งไคลเอ็นต์:
ไคลเอ็นต์ -> เซิร์ฟเวอร์
จากฝั่งเซิร์ฟเวอร์:
ไคลเอ็นต์ -> พร็อกซี -> เซิร์ฟเวอร์
ดังนั้นฉันคิดว่าถ้าตั้งค่าโดยผู้ใช้ไคลเอนต์จะเรียกว่าพร็อกซีถ้าตั้งค่าโดยผู้จัดการเซิร์ฟเวอร์มันเป็นพร็อกซีย้อนกลับ
เนื่องจากวัตถุประสงค์และเหตุผลในการตั้งค่าแตกต่างกันพวกเขาจัดการกับข้อมูลด้วยวิธีการต่าง ๆ และใช้ซอฟต์แวร์ที่แตกต่างกัน
User side | Server side
client <-> proxy <--> reverse_proxy <-> real server
มองจากมุมมองของผู้ใช้: เมื่อส่งคำขอไปยังพร็อกซีหรือพร็อกซีเซิร์ฟเวอร์ย้อนกลับ :
พร็อกซี - ต้องมีสองอาร์กิวเมนต์ :
1) สิ่งที่จะได้รับและ 2) พร็อกซีเซิร์ฟเวอร์ที่จะใช้สื่อกลาง
reverse proxy - ต้องการอาร์กิวเมนต์หนึ่งตัว :
1) สิ่งที่จะได้รับ
พร็อกซีกลับดึงเนื้อหาจากเซิร์ฟเวอร์อื่นถิ่นผู้ใช้และผลตอบแทนผลราวกับว่ามันมาจากพร็อกซีเซิร์ฟเวอร์กลับ
คำตอบก่อนหน้านี้ส่วนใหญ่ดี แต่ในความคิดของฉันไม่มีใครใกล้ที่จะตอบสนองได้ดีพอกับคุณภาพ "ย้อนกลับ" ที่แตกต่างทั้งสองอย่าง ในการทำเช่นนั้นจะต้องให้วิธีการมองเห็นธรรมชาติของ "สิ่งที่ตรงกันข้าม" ของสิ่งที่จำเป็นต้องได้รับ (พร็อกซี) และต้องได้รับในทางที่เป็นนามธรรม
พร็อกซี่ (โดยปริยาย "ไปข้างหน้าพร็อกซี่") เชื่อมต่อลูกค้าในประเทศหลายไปยังเซิร์ฟเวอร์ระยะไกลอย่างใดอย่างหนึ่ง:
c--
|--p--s
c--
พร็อกซี่กลับเชื่อมต่อเซิร์ฟเวอร์ท้องถิ่นหลายรายการให้กับลูกค้าระยะไกลคนใดคนหนึ่ง (แจ้งให้ทราบวิธีหลีรูปแบบ):
s--
|--p--c
s--
มันเป็นเรื่องของมุมมองจริง ๆ และการทำความเข้าใจแนวคิดอย่างถูกต้องนั้นต้องมีการแยกแยะรายละเอียดที่ไม่จำเป็น (สำหรับแนวคิดเฉพาะ) ถึงแม้ว่ามันจะมีความสำคัญมากเมื่อพูดถึงการปฏิบัติของพร็อกซี รายละเอียดดังกล่าวรวมถึงข้อเท็จจริงที่ว่าทั้งสองสถานการณ์ความเป็นจริงก็คือไคลเอนต์หลายเครื่องเชื่อมต่อกับเซิร์ฟเวอร์หลายเครื่องไคลเอนต์และเซิร์ฟเวอร์อาจไม่ได้อยู่ในระบบโลคัลหรือระยะไกลที่ซึ่งอินเทอร์เน็ตคลาวด์ตั้งอยู่