FCM-এর জন্য আপনার নেটওয়ার্ক কনফিগার করা

আপনার নেটওয়ার্ক এনভায়রনমেন্টে FCM যাতে সঠিকভাবে কাজ করতে পারে তার জন্য প্রয়োজনীয় নেটওয়ার্ক কনফিগারেশন এই ডকুমেন্টে উল্লেখ করা হয়েছে।

FCM-এ মেসেজ পাঠানোর জন্য আপনার নেটওয়ার্ক কনফিগার করুন

শুরু করার আগে, মেসেজ পাঠানো ও সাবস্ক্রিপশন ম্যানেজ করার জন্য আপনার সিস্টেম FCM সার্ভারের সাথে যোগাযোগ করছে কিনা তা নিশ্চিত করতে হবে।

FCM মেসেজ পাঠাতে বা সাবস্ক্রিপশন ম্যানেজ করতে, আপনার নেটওয়ার্ককে https-এর মাধ্যমে নিম্নলিখিত সার্ভারের সাথে যোগাযোগ করতে হবে:

  • fcm.googleapis.com (মেসেজ পাঠানো)
  • accounts.google.com (মেসেজ পাঠানোর জন্য যাচাইকরণ)
  • iid.googleapis.com (বিষয়ভিত্তিক সাবস্ক্রিপশন ও ডিভাইস গ্রুপ ম্যানেজমেন্ট)

সময়ের সাথে সাথে এই তালিকায় পরিবর্তন হতে পারে। এইসব এন্ডপয়েন্টের জন্য আমরা IP-ভিত্তিক শ্বেততালিকা দিতে পারছি না।

FCM ব্যবহার করে Android ডিভাইসের জন্য আপনার নেটওয়ার্ক কনফিগার করুন

এই বিভাগে Android ডিভাইসের জন্য FCM ট্রাফিক সাপোর্ট করার জন্য আপনার নেটওয়ার্ক কীভাবে কনফিগার করবেন সেই বিষয়ে বিস্তারিত তথ্য দেওয়া আছে।

FCM পোর্ট এবং আপনার ফায়ারওয়াল

বেশিরভাগ নেটওয়ার্কই ডিভাইসের সাথে ইন্টারনেটের বাকি অংশের কানেকশন সীমিত করে না। সাধারণত, এটি আমাদের সাজেশন। তবে, কিছু সংস্থার পেরিমিটার নিরাপত্তা প্ল্যানের অংশ হিসেবে ফায়ারওয়াল প্রয়োজন হয়।

Firewall সংক্রান্ত বিকল্প

বিকল্প আমরা কী করি নির্দিষ্ট নিয়ম নোট
কোনওটিই নয় (পছন্দসই) - - -
পোর্ট ভিত্তিক ফিল্টারিং (দ্বিতীয় পছন্দ) নির্দিষ্ট পোর্টে ট্রাফিক সীমিত করা

খোলার জন্য TCP পোর্ট:

  • 5228
  • 5229
  • 5230
  • 443
এটি সবচেয়ে সহজ নিয়ম এবং সময়ের সাথে সাথে পরিবর্তন হওয়ার সম্ভাবনা আছে এমন বিষয়ের উপর নির্ভরতা কমায়।
হোস্টনেম ভিত্তিক ফিল্টারিং ফায়ারওয়ালের মাধ্যমে পাস করার জন্য নির্দিষ্ট TLS SNI এন্ট্রি সাদাতালিকাভুক্ত করতে বিশেষ ফায়ারওয়াল কনফিগারেশন ব্যবহার করা। এটি পোর্ট ভিত্তিক ফিল্টারিংয়ের সাথে একত্রিত করা হতে পারে।

খোলার জন্য হোস্টনেম:

  • mtalk.google.com
  • mtalk4.google.com
  • mtalk-staging.google.com
  • mtalk-dev.google.com
  • alt1-mtalk.google.com
  • alt2-mtalk.google.com
  • alt3-mtalk.google.com
  • alt4-mtalk.google.com
  • alt5-mtalk.google.com
  • alt6-mtalk.google.com
  • alt7-mtalk.google.com
  • alt8-mtalk.google.com
  • android.apis.google.com
  • device-provisioning.googleapis.com
  • firebaseinstallations.googleapis.com
সব ফায়ারওয়্যার সফ্টওয়্যার এটি সাপোর্ট করে না, তবে অনেক সফ্টওয়্যার করে। এই তালিকাটি মোটামুটি স্থিতিশীল, তবে এটি পরিবর্তন হলে আমরা আপনাকে আগে থেকে জানাব না।
IP-এর উপর ভিত্তি করে ফিল্টার করা (না করার জন্য জোরদারভাবে সাজেস্ট করা হয়) IP অ্যাড্রেসের খুব বড় স্ট্যাটিক তালিকা ব্যবহার করুন। goog.json-এ তালিকাভুক্ত সব IP অ্যাড্রেসকে সাদাতালিকাভুক্ত করুন। এই তালিকা নিয়মিত আপডেট করা হয় এবং আপনাকে প্রতি মাসে নিয়ম আপডেট করার সাজেশন দেওয়া হয়। ফায়ারওয়াল IP সংক্রান্ত বিধিনিষেধের কারণে হওয়া সমস্যা প্রায়শই সাময়িক হয় এবং তা শনাক্ত করা কঠিন। আমরা খুব ঘন ঘন এবং কোনও রকম সতর্কতা ছাড়াই আমাদের IP অ্যাড্রেসের তালিকা পরিবর্তন করি, তাই আপনাকে এই বড় তালিকাটি লিখতে হবে এবং ঘন ঘন এটি আপডেট করতে হবে।

এছাড়াও, লোকেরা যখন তাদের ফায়ারওয়াল নিয়মে IP হোয়াইটলিস্ট লেখার চেষ্টা করে, তখন আমরা প্রায়ই ভুল টাইপ করা দেখতে পাই।

আমরা এটি সাজেস্ট করি না কারণ তথ্যটি অনিবার্যভাবে পুরানো হয়ে যায় এবং এটি আর আপডেট করা হয় না।

এছাড়াও, তালিকার সাইজ কিছু রাউটারের জন্য খুব বড় হতে পারে।

নেটওয়ার্ক অ্যাড্রেস ট্রান্সলেশন বা স্টেটফুল প্যাকেট ইন্সপেকশন ফায়ারওয়াল

আপনার নেটওয়ার্ক, নেটওয়ার্ক অ্যাড্রেস ট্রান্সলেশন (NAT) বা স্টেটফুল প্যাকেট ইনস্পেকশন (SPI) প্রয়োগ করলে, পোর্ট 5228-5230-এর মাধ্যমে আমাদের কানেকশনের জন্য ৩০ মিনিট বা তার বেশি টাইম-আউট প্রয়োগ করুন। এর ফলে, ব্যবহারকারীর মোবাইল ডিভাইসের ব্যাটারি খরচ কমানোর পাশাপাশি আমরা নির্ভরযোগ্য কানেক্টিভিটি প্রদান করতে পারি।

FCM এবং প্রক্সি

ডিভাইসে পুশ মেসেজ ডেলিভার করার জন্য FCM-এর প্রোটোকল নেটওয়ার্ক প্রক্সির মাধ্যমে প্রক্সি করা যায় না। তাই আপনাকে নিশ্চিত করতে হবে যে আপনার নেটওয়ার্কে থাকা ডিভাইস থেকে FCM কানেকশন সরাসরি আমাদের সার্ভারের সাথে কানেক্ট করতে পারে।

VPN ইন্টার‍্যাকশন ও বাইপাস করার সুবিধা

Firebase Cloud Messaging বিভিন্ন পদক্ষেপ গ্রহণ করে যাতে ফোন থেকে সার্ভারে পুশ মেসেজিং কানেকশন নির্ভরযোগ্য হয় এবং যতটা সম্ভব উপলভ্য থাকে। VPN ব্যবহার করলে এই প্রচেষ্টা আরও জটিল হয়ে যায়।

VPN, FCM-এর নির্ভরযোগ্যতা ও ব্যাটারির আয়ু সর্বাধিক করার জন্য কানেকশন টিউন করার প্রয়োজনীয় মূল তথ্যকে আড়াল করে। কিছু ক্ষেত্রে VPN অ্যাক্টিভভাবে দীর্ঘস্থায়ী কানেকশন ভেঙে দেয়, এর ফলে মেসেজ মিস হয়ে যাওয়া বা দেরিতে আসা অথবা ব্যাটারি খরচ বেশি হওয়ার কারণে ব্যবহারকারীর অভিজ্ঞতা খারাপ হয়। VPN-কে আমাদের এটি করার অনুমতি দেওয়ার জন্য কনফিগার করা হলে, আমরা একটি এনক্রিপ্ট করা কানেকশন (বেস নেটওয়ার্ক ওয়াই-ফাই বা LTE-এর মাধ্যমে) ব্যবহার করে VPN বাইপাস করি, যাতে একটি নির্ভরযোগ্য, ব্যাটারি ফ্রেন্ডলি অভিজ্ঞতা নিশ্চিত করা যায়। FCM-এর বাইপাস করা যায় এমন VPN-এর ব্যবহার FCM পুশ বিজ্ঞপ্তি চ্যানেলের জন্য নির্দিষ্ট। অন্যান্য FCM ট্রাফিক, যেমন রেজিস্ট্রেশন ট্রাফিক, VPN চালু থাকলে সেটি ব্যবহার করে। FCM কানেকশন VPN বাইপাস করলে, VPN-এর দেওয়া অতিরিক্ত সুবিধাগুলি আর পাওয়া যায় না, যেমন IP মাস্কিং।

বিভিন্ন VPN-এর ক্ষেত্রে বাইপাস করা যাবে কিনা তা নিয়ন্ত্রণ করার জন্য বিভিন্ন পদ্ধতি থাকবে। নির্দেশাবলীর জন্য আপনার নির্দিষ্ট ভিপিএন-এর ডকুমেন্টেশন দেখুন।

VPN বাইপাস করার জন্য কনফিগার করা না থাকলে, সার্ভারের সাথে কানেক্ট করার জন্য Firebase Cloud Messaging VPN নেটওয়ার্ক ব্যবহার করবে। এর ফলে, এমন সময়সীমা তৈরি হতে পারে যেখানে মেসেজ পেতে দেরি হয় এবং এর ফলে ব্যাটারি বেশি খরচ হতে পারে কারণ Cloud Messaging VPN কানেকশনের মাধ্যমে কানেকশন মেনে চলার জন্য কাজ করে।