เอกสารนี้อธิบายการกำหนดค่าเครือข่ายที่จำเป็นสำหรับ 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 ในกฎไฟร์วอลล์ เราไม่แนะนำให้ทำเช่นนี้เนื่องจากข้อมูลจะล้าสมัยและไม่มีการบำรุงรักษา นอกจากนี้ ขนาดของรายการอาจไม่สะดวกสำหรับเราเตอร์บางรุ่น |
ไฟร์วอลล์การเปลี่ยนค่าที่อยู่เครือข่ายหรือ Stateful Packet Inspection
หากเครือข่ายของคุณใช้การแปลที่อยู่เครือข่าย (NAT) หรือการตรวจสอบแพ็กเก็ตแบบมีสถานะ (SPI) ให้ใช้การหมดเวลา 30 นาทีขึ้นไปสำหรับการเชื่อมต่อของเราผ่านพอร์ต 5228-5230 ซึ่งช่วยให้เรามอบการเชื่อมต่อที่เชื่อถือได้พร้อมทั้ง ลดการใช้แบตเตอรี่ของอุปกรณ์เคลื่อนที่ของผู้ใช้
FCM และพร็อกซี
โปรโตคอลของ FCM สำหรับการส่งข้อความพุชไปยังอุปกรณ์ไม่สามารถ พร็อกซีผ่านพร็อกซีเครือข่ายได้ ดังนั้น คุณจะต้องตรวจสอบว่าการเชื่อมต่อ FCM จากอุปกรณ์ในเครือข่ายสามารถเชื่อมต่อกับเซิร์ฟเวอร์ของเราได้โดยตรง
การโต้ตอบ VPN และการข้าม
Firebase Cloud Messaging ดำเนินการหลายขั้นตอนเพื่อให้มั่นใจว่าการเชื่อมต่อการรับส่งข้อความพุชจากโทรศัพท์ไปยังเซิร์ฟเวอร์มีความน่าเชื่อถือและพร้อมใช้งานบ่อยที่สุดเท่าที่จะเป็นไปได้ การใช้ VPN ทำให้การดำเนินการนี้ซับซ้อนยิ่งขึ้น
VPN จะปิดบังข้อมูลพื้นฐานที่ FCM ต้องใช้ในการปรับแต่งการเชื่อมต่อเพื่อเพิ่มความน่าเชื่อถือและอายุการใช้งานแบตเตอรี่ให้ได้มากที่สุด ในบางกรณี VPN จะ ตัดการเชื่อมต่อที่ใช้งานเป็นเวลานาน ซึ่งส่งผลให้ผู้ใช้ได้รับประสบการณ์การใช้งานที่ไม่ดีเนื่องจากพลาดหรือ ได้รับข้อความล่าช้า หรือแบตเตอรี่หมดเร็ว เมื่อกำหนดค่า VPN เพื่ออนุญาตให้เราดำเนินการดังกล่าว เราจะข้าม VPN โดยใช้การเชื่อมต่อที่เข้ารหัส (ผ่านเครือข่ายพื้นฐาน Wi-Fi หรือ LTE) เพื่อให้มั่นใจว่าจะได้รับประสบการณ์การใช้งานที่เชื่อถือได้และประหยัดแบตเตอรี่ FCMการใช้ VPN ที่ข้ามได้ของ FCM ช่องทางข้อความพุช การรับส่งข้อมูลอื่นๆ ของ FCM เช่น การรับส่งข้อมูลการลงทะเบียน จะใช้ VPN หากเปิดใช้งานอยู่ เมื่อFCM การเชื่อมต่อข้าม VPN จะทำให้สูญเสียสิทธิประโยชน์เพิ่มเติมที่ VPN อาจมีให้ เช่น การมาสก์ IP
VPN แต่ละรายการจะมีวิธีควบคุมที่แตกต่างกันว่าสามารถข้ามได้หรือไม่ โปรดดูวิธีการในเอกสารประกอบของ VPN ที่คุณใช้
หากไม่ได้กำหนดค่า VPN ให้ข้ามได้ Firebase Cloud Messaging จะใช้เครือข่าย VPN เพื่อเชื่อมต่อกับเซิร์ฟเวอร์ ซึ่งอาจส่งผลให้ข้อความล่าช้าและอาจทำให้ใช้แบตเตอรี่มากขึ้นเนื่องจาก Cloud Messaging พยายามรักษาการเชื่อมต่อผ่านการเชื่อมต่อ VPN