เอกสารนี้จะอธิบายการกำหนดค่าเครือข่ายที่จำเป็นเพื่อให้ FCM ทำงานได้อย่างถูกต้องภายในสภาพแวดล้อมเครือข่ายของคุณ
กำหนดค่าเครือข่ายสำหรับการส่งข้อความไปยัง FCM
ก่อนเริ่มต้น คุณต้องตรวจสอบว่าระบบสื่อสารกับเซิร์ฟเวอร์ FCM เพื่อส่งข้อความและจัดการการสมัครใช้บริการ
หากต้องการส่งข้อความ FCM หรือจัดการการสมัครใช้บริการ เครือข่ายของคุณจะต้องสื่อสารกับเซิร์ฟเวอร์ต่อไปนี้ผ่าน https:
- fcm.googleapis.com (การส่งข้อความ)
- accounts.google.com (การตรวจสอบสิทธิ์สำหรับการส่งข้อความ)
- iid.googleapis.com (การสมัครใช้บริการหัวข้อและการจัดการกลุ่มอุปกรณ์)
รายการนี้อาจมีการเปลี่ยนแปลงเมื่อเวลาผ่านไป เราไม่สามารถระบุรายการที่อนุญาตตาม IP สำหรับปลายทางเหล่านี้ได้
กำหนดค่าเครือข่ายสำหรับอุปกรณ์ Android โดยใช้ FCM
ส่วนนี้จะอธิบายวิธีกำหนดค่าเครือข่ายเพื่อรองรับการรับส่งข้อมูล FCM สำหรับอุปกรณ์ Android
พอร์ต FCM และไฟร์วอลล์
เครือข่ายส่วนใหญ่ไม่ได้จำกัดอุปกรณ์ไม่ให้เชื่อมต่อกับอินเทอร์เน็ตที่เหลือ โดยทั่วไป เราขอแนะนำให้ทำดังนี้ อย่างไรก็ตาม บางองค์กรจำเป็นต้องใช้ไฟร์วอลล์เป็นส่วนหนึ่งของแผนการรักษาความปลอดภัยรอบนอก
ตัวเลือกไฟร์วอลล์
| ตัวเลือก | สิ่งที่เราทำ | กฎเฉพาะ | หมายเหตุ |
|---|---|---|---|
| ไม่มี (แนะนำ) | - | - | - |
| การกรองตามพอร์ต (ตัวเลือกที่ 2) | จำกัดการเข้าชมไว้เฉพาะพอร์ตที่เจาะจง | พอร์ต TCP ที่ต้องเปิดมีดังนี้
|
ซึ่งเป็นกฎที่ง่ายที่สุดและป้องกันการพึ่งพาสิ่งที่มีแนวโน้มจะเปลี่ยนแปลงเมื่อเวลาผ่านไป |
| การกรองตามชื่อโฮสต์ | ใช้การกำหนดค่าไฟร์วอลล์พิเศษเพื่อเพิ่มรายการ TLS SNI บางรายการลงในรายการที่อนุญาตให้ผ่านไฟร์วอลล์ได้ ซึ่งอาจใช้ร่วมกับการกรองตามพอร์ต | ชื่อโฮสต์ที่จะเปิด:
|
ซอฟต์แวร์ไฟร์วอลล์บางตัวอาจไม่รองรับ แต่ส่วนใหญ่จะรองรับ รายการนี้ค่อนข้างเสถียร แต่เราจะไม่แจ้งให้คุณทราบล่วงหน้าหากมีการเปลี่ยนแปลง |
| การกรองตาม IP (ไม่แนะนำอย่างยิ่ง) | ใช้รายการที่อยู่ IP แบบคงที่ขนาดใหญ่มาก | เพิ่มที่อยู่ IP ทั้งหมดที่แสดงใน goog.json ลงในรายการที่อนุญาต รายการนี้จะได้รับการอัปเดตเป็นประจำ และเราขอแนะนำให้คุณอัปเดตกฎเป็นรายเดือน ปัญหาที่เกิดจากการจำกัด IP ของไฟร์วอลล์มักเกิดขึ้นเป็นระยะๆ และวินิจฉัยได้ยาก | เราเปลี่ยนรายการที่อยู่ IP บ่อยมากและไม่มีการแจ้งเตือน ดังนั้นคุณจะต้องป้อนรายการขนาดใหญ่นี้และอัปเดตบ่อยๆ นอกจากนี้ เรายังพบการพิมพ์ผิดบ่อยครั้งเมื่อผู้ใช้พยายามป้อนรายการที่อนุญาตของ IP ในกฎไฟร์วอลล์ เราไม่แนะนำให้ทำเช่นนี้เนื่องจากข้อมูลจะล้าสมัยและไม่ได้รับการดูแลรักษาอย่างสม่ำเสมอ นอกจากนี้ ขนาดของรายการอาจทำให้เราเตอร์บางตัวทำงานได้ไม่เต็มประสิทธิภาพ |
ไฟร์วอลล์การเปลี่ยนค่าที่อยู่เครือข่ายหรือการตรวจสอบแพ็กเก็ตแบบเก็บสถานะ
หากเครือข่ายของคุณใช้การเปลี่ยนค่าที่อยู่เครือข่าย (NAT) หรือการตรวจสอบแพ็กเก็ตแบบเก็บสถานะ (SPI) ให้ใช้ระยะหมดเวลา 30 นาทีขึ้นไปสำหรับการเชื่อมต่อของเราผ่านพอร์ต 5228-5230 ซึ่งช่วยให้เรามอบการเชื่อมต่อที่เชื่อถือได้พร้อมทั้งลดการใช้แบตเตอรี่ของอุปกรณ์เคลื่อนที่ของผู้ใช้
FCM และพร็อกซี
โปรโตคอลของ FCM สำหรับการส่งข้อความ Push ไปยังอุปกรณ์ไม่สามารถใช้พร็อกซีผ่านพร็อกซีเครือข่ายได้ ดังนั้นคุณจึงต้องตรวจสอบว่าการเชื่อมต่อ FCM จากอุปกรณ์ในเครือข่ายสามารถเชื่อมต่อกับเซิร์ฟเวอร์ของเราได้โดยตรง
การโต้ตอบกับ VPN และความสามารถในการข้าม VPN
Firebase Cloud Messaging ดำเนินการหลายขั้นตอนเพื่อให้แน่ใจว่าการเชื่อมต่อข้อความ Push จากโทรศัพท์ไปยังเซิร์ฟเวอร์มีความน่าเชื่อถือและพร้อมใช้งานบ่อยที่สุดเท่าที่จะเป็นไปได้ การใช้ VPN ทำให้การดำเนินการนี้ซับซ้อนขึ้น
VPN จะปิดบังข้อมูลพื้นฐานที่ FCM ต้องใช้เพื่อปรับแต่งการเชื่อมต่อเพื่อเพิ่มความน่าเชื่อถือและอายุการใช้งานแบตเตอรี่ให้ได้มากที่สุด ในบางกรณี VPN จะตัดการเชื่อมต่อที่ใช้เวลานานอย่างต่อเนื่อง ซึ่งส่งผลให้ผู้ใช้ได้รับประสบการณ์การใช้งานที่ไม่ดีเนื่องจากข้อความขาดหายหรือล่าช้า หรือแบตเตอรี่หมดเร็ว เมื่อกำหนดค่า VPN เพื่ออนุญาตให้เราดำเนินการดังกล่าว เราจะข้าม VPN โดยใช้การเชื่อมต่อที่เข้ารหัส (ผ่าน Wi-Fi หรือ LTE ของเครือข่ายพื้นฐาน) เพื่อให้มั่นใจว่าผู้ใช้จะได้รับประสบการณ์การใช้งานที่เชื่อถือได้และประหยัดแบตเตอรี่ การใช้ VPN ที่ข้ามได้ของ FCM มีไว้สำหรับช่องทางข้อความ Push ของ FCM โดยเฉพาะ การรับส่งข้อมูลอื่นๆ ของ FCM เช่น การรับส่งข้อมูลการลงทะเบียน จะใช้ VPN หากเปิดใช้งานอยู่ เมื่อการเชื่อมต่อ FCM ข้าม VPN จะทำให้สูญเสียสิทธิประโยชน์เพิ่มเติมที่ VPN อาจมอบให้ เช่น การมาสก์ IP
VPN แต่ละรายการจะมีวิธีการที่แตกต่างกันในการควบคุมว่าจะข้ามได้หรือไม่ โปรดดูวิธีการในเอกสารประกอบสำหรับ VPN ที่คุณใช้
หากไม่ได้กำหนดค่า VPN ให้ข้ามได้ Firebase Cloud Messaging จะใช้เครือข่าย VPN เพื่อเชื่อมต่อกับเซิร์ฟเวอร์ ซึ่งอาจส่งผลให้ข้อความล่าช้าเป็นระยะๆ และอาจส่งผลให้มีการใช้แบตเตอรี่มากขึ้นเนื่องจาก Cloud Messaging ต้องทำงานเพื่อรักษาการเชื่อมต่อผ่านการเชื่อมต่อ VPN