انتقل إلى المحتوى الرئيسي

دليل عمليات ونشر OmniTWAG

أنشأه Omnitouch

هذا الدليل مخصص لمشغلي الشبكات، ومديري الأنظمة، والعملاء الذين يقومون بنشر OmniTWAG.

جدول المحتويات

  1. مقدمة
  2. ما هو تحميل WiFi؟
  3. معمارية النشر
  4. تدفق الشحن
  5. تدفق المصادقة
  6. دليل التكوين
  7. إعداد نقطة الوصول
  8. تكامل Hotspot 2.0
  9. المراقبة والإدارة
  10. استكشاف الأخطا�� وإصلاحها
  11. الامتثال للمعايير
  12. التوثيق

التوثيق

هذا الدليل هو نقطة الدخول. الصفحات أدناه تغطي ميزات محددة ومراجع.

تدفقات المكالمات

  • تدفقات المكالمات - مخططات تسلسل من النهاية إلى النهاية للتوصيل، المصادقة، العناوين، الشحن، والتفكيك عبر كل وضع تفكيك ووضع شحن.

الأنظمة الفرعية

  • المصادقة - EAP-AKA، EAP-AKA وEAP-SIM، مصادر متجهات المصادقة (SWx إلى HSS أو Milenage المحلي)، اشتقاق المفاتيح وتسليمها إلى AP، وإعادة التزامن.
  • أوضاع الاتصال - وضع الاتصال الفردي الشفاف (TSCM)، وضع الاتصال الفردي (SCM) وأوضاع الاتصال المتعددة (MCM/WLCP)، التفاوض على الوضع، والتنقل.
  • واجهة S2a GTP-C - إنشاء الجلسة، إدارة الحامل والتفكيك مع PGW عبر S2a.
  • طائرة المستخدم ومسار البيانات - نفق GTP-U، GRE، توجيه البيانات الهابطة، الحوامل وقوالب تدفق البيانات.
  • إدارة عنوان IP - كيفية تسليم عنوان UE عبر DHCPv4، DHCPv6، إعلان موجه IPv6 وPCO.
  • الشحن عبر الإنترنت - واجهة Gy إلى OCS: تدفق التحكم في الائتمان، تقارير الحصة وأوضاع الشحن.

الميزات

  • أسرار RADIUS المشتركة (لكل مجموعة IP المصدر) - إدارة العديد من الأسرار المشتركة، كل منها مرتبط بشبكة فرعية IP المصدر، وتعيين نوع التفكيك لكل AP (مقننة، NSWO، أو محلية) ووضع الشحن.
  • مجموعات IP - مجموعات عناوين مدفوعة عبر API لـ NSWO (تفكيك محلي مثبت على TWAG)، المرتبطة ببيانات اعتماد نقطة الوصول.
  • الجلسات - عرض الجلسة الحية لكل مشترك مع دمج البيانات/المحاسبة، وإجراءات لكل جلسة (طرد، بدء/إيقاف المحاسبة).
  • رفض RADIUS - مصادر RADIUS المرفوضة: نقاط وصول غير معروفة ونقاط وصول بها سر مشترك خاطئ.
  • محاسبة لكل AP - إجمالي حركة المرور المجمعة وعدد الجلسات لكل نقطة وصول.

المرجع


مقدمة

OmniTWAG (بوابة الوصول اللاسلكي الموثوقة) هو تنفيذ متوافق مع المعايير لـ 3GPP TWAG الذي يمكّن مشغلي الشبكات المحمولة من تحميل حركة مرور المشتركين بأمان من الشبكات الخلوية إلى نقاط وصول WiFi مع الحفاظ على المصادقة الآمنة المعتمدة على SIM.

يقوم TWAG بمصادقة مشتركي WiFi باستخدام بيانات اعتماد SIM الخاصة بهم عبر EAP-AKA (بروتوكول المصادقة القابل للتوسيع - اتفاقية المصادقة والمفتاح)، وهو نفس آلية المصادقة المستخدمة في الشبكات الخلوية. وهذا يوفر وصول WiFi سلس وآمن للمشتركين المحمولين دون الحاجة إلى كلمات مرور WiFi منفصلة.

الفوائد الرئيسية

للمستخدمين النهائيين:

  • تكوين صفر: يعمل مباشرة مع SIM متوافق
  • تجربة سلسة: اتصال تلقائي مثل الخلوية
  • آمن: يستخدم دائمًا WiFi مشفر (WPA2)
  • لا كلمات مرور: مصادقة تعتمد على SIM

لمشغلي الشبكات المحمولة:

  • تخفيف سعة الشبكة: يقلل الحمل على محطات القاعدة الخلوية
  • تحميل محكوم: يمكن فقط للمشتركين المعتمدين الاتصال
  • تحسين تجربة المستخدم: عادةً ما يقدم WiFi عرض نطاق ترددي أعلى
  • كفاءة التكلفة: بنية WiFi التحتية أقل تكلفة من الخلوية
  • هوية متسقة: نفس IMSI مستخدم لـ WiFi والخلوية
  • تكامل الفوترة: يمكن شحن استخدام WiFi إذا رغبت

للمواقع/الشركات:

  • أمان على مستوى المشغل: لا يوجد خطر من مشاركة كلمات المرور
  • قابلية التوسع: دعم لآلاف المستخدمين دون توفير يدوي
  • إدارة مبسطة: لا حاجة لتوزيع كلمات مرور WiFi

ما هو تحميل WiFi؟

يسمح تحميل WiFi لمشغلي الشبكات المحمولة بإعادة توجيه حركة بيانات المشتركين من الشبكات الخلوية المزدحمة إلى شبكات WiFi.

كيف يمكّن TWAG التحميل

يعمل TWAG كبوابة المصادقة بين:

  • نقاط وصول WiFi (عبر بروتوكول RADIUS)
  • شبكة النواة المحمولة HSS/HLR (عبر واجهة Diameter SWx)

عندما يتصل جهاز المشترك بنقطة وصول WiFi مهيأة للتحميل:

  1. يتعرف الجهاز على نفسه باستخدام IMSI الخاص به (من بطاقة SIM)
  2. تقوم نقطة وصول WiFi بإرسال طلبات المصادقة إلى TWAG عبر RADIUS
  3. يتواصل TWAG مع HSS الخاص بالمشغل لاسترداد متجهات المصادقة
  4. تحدث مصادقة التحدي والاستجابة EAP-AKA بين الجهاز وTWAG
  5. عند المصادقة الناجحة، يُمنح الجهاز وصول WiFi
  6. اختياريًا، يمكن أن يتم توجيه الحركة مرة أخرى إلى النواة المحمولة أو التفكيك محليًا

معمارية النشر

طوبولوجيا الشبكة

أسطورة الواجهة:

  • STa*: واجهة RADIUS/Diameter بين نقطة وصول WiFi وTWAG (غير 3GPP إلى AAA)
  • SWx: واجهة Diameter بين TWAG (خادم AAA 3GPP) وHSS
  • S2a/S2b: واجهة نفق GTP للعودة إلى الشبكة المنزلية (اختياري)
  • SGi: واجهة إلى الشبكات الخارجية للبيانات الحزمية (الإنترنت)
  • 802.11: واجهة راديو WiFi
  • EAPOL: EAP عبر LAN (مصادقة 802.1X)

واجهة المستخدم على الويب

سيناريوهات النشر

السيناريو 1: التفكيك المحلي (موصى به للأداء)

الفوائد:

  • زمن استجابة أقل (لا يوجد توجيه إلى النواة)
  • تقليل الحمل على الشبكة الأساسية
  • تجربة مستخدم أفضل للتطبيقات عالية النطاق
  • توفير في تكلفة سعة العودة

السيناريو 2: توجيه الشبكة المنزلية (نفق GTP)

الفوائد:

  • تنفيذ سياسة متسقة
  • شحن/فواتير مركزية
  • تطبيق سياسات VPN/الأمان المؤسسية
  • تنقل سلس بين WiFi والخلوية

خيارات اتصال SWx

الخيار 1: اتصال مباشر ��ـ HSS

حالة الاستخدام: نشرات بسيطة، بيئات مختبرية، HSS واحد

الفوائد:

  • زمن استجابة أقل (لا يوجد قفز عبر DRA)
  • تكوين مبسط
  • سهولة في استكشاف الأخطاء وإصلاحها

الخيار 2: عبر DRA (وكيل توجيه Diameter)

حالة الاستخدام: نشرات متعددة HSS، سيناريوهات التجوال، الشبكات الكبيرة

الفوائد:

  • منطق توجيه مركزي
  • توزيع الحمل عبر عدة HSS
  • دعم التجوال (التوجيه إلى HSS المنزلي)
  • تكرار وفشل
  • ثبات الجلسة

تدفق الشحن

يمكن دمج TWAG بالكامل لإرسال طلبات الشحن عبر الإنترنت المستندة إلى Diameter Gy إلى نظام الشحن عبر الإنترنت (OCS).

يسمح ذلك بمحاسبة جميع البيانات المستهلكة على WiFi، مقابل رصيد العميل، ويتم تسليمها عبر AP على RADIUS وتحويلها إلى Gy بواسطة TWAG وإعادة توجيهها إلى DRA/OCS.

في جميع الأوضاع، يتم تتبع الاستخدام بواسطة مقاييس TWAG.

استخدام العميل على واجهة الويب والمحاسبة

أوضاع الشحن

يدعم TWAG ثلاثة أوضاع شحن عبر الإنترنت:

1. الشحن معطل

لا يتم إرسال طلبات التحكم في الائتمان. لا يتم إجراء أي مصادقة لرصيد.

حالات الاستخدام:

  • شبكات WiFi مفتوحة/مجانية
  • بيئات مختبرية/اختبارية
  • الشبكات التي تحتوي على شحن غير متصل فقط (محاسبة RADIUS للفوترة)

التدفق:

2. المصادقة فقط

يتم إرسال CCR-Initial (طلب التحكم في الائتمان) إلى OCS في بداية جلسة WiFi للتحقق من أن المشترك لديه رصيد، ولكن لا يتم سحب الرصيد خلال الجلسة.

حالات الاستخدام:

  • التحقق من أن المشترك لديه حساب/رصيد نشط
  • منع الوصول إلى WiFi للحسابات المعلقة
  • التحقق من أهلية الخدمة دون تتبع الحصة
  • السماح لـ WiFi كخدمة مكافأة/غير محدودة للعملاء الذين يدفعون

التدفق:

التكوين:

  • يتم استعلام OCS في بداية الجلسة (CCR-I) ونهايتها (CCR-T)
  • لا يتم إرسال رسائل CCR-Update خلال الجلسة
  • يتم اعتماد المشترك بناءً على حالة الحساب، وليس الحصة
  • يتم الإبلاغ عن الاستخدام في نهاية الجلسة لأغراض إعلامية فقط

3. شحن Gy عبر الإنترنت بالكامل (تنفيذ كامل)

يتم اتباع تدفق الشحن القياسي عبر الإنترنت 3GPP. يتم تمرير جميع الاستخدامات على WiFi إلى OCS للشحن، مع قطع المشترك بمجرد تجاوز حصته.

حالات الاستخدام:

  • خدمات البيانات المدفوعة مسبقًا
  • WiFi بالدفع مقابل الاستخدام
  • خطط قائمة على الحصة (مثل، 10 جيجابايت شهريًا)
  • شحن مباشر وقطع الاتصال

التدفق:

التكوين:

  • يتم استعلام OCS في بداية الجلسة (CCR-I)، خلال الجلسة (CCR-U)، وفي النهاية (CCR-T)
  • يتم طلب الحصة في كتل قابلة للتكوين (مثل، 10MB، 50MB، 100MB)
  • يتم تشغيل CCR-Update عند عتبة قابلة للتكوين (مثل، 80% من الحصة الممنوحة)
  • يؤدي مؤقت الصلاحية إلى إعادة المصادقة إذا لم يتم استنفاد الحصة
  • قطع الاتصال الإجباري عند استنفاد الحصة
  • خصم الرصيد في الوقت الفعلي

تدفق المصادقة

تسلسل المصادقة الكامل EAP-AKA

النقاط الرئيسية في تدفق المصادقة

  1. MAR/MAA هو نهاية الاتصال مع HSS: بعد استلام MAA (إجابة المصادقة متعددة الوسائط) مع XRES، يتولى TWAG جميع عمليات التحقق اللاحقة محليًا.

  2. يقوم TWAG بإجراء التحقق من RES: يوفر HSS الاستجابة المتوقعة (XRES)، لكن TWAG يقارنها مع RES الفعلي من UE. HSS ليس له دور في هذه المقارنة.

  3. تحدث المصادقة في TWAG: هذا يختلف عن بعض المخططات التي تظهر HSS تقوم بالتحقق. في الهيكلية الفعلية لـ 3GPP، يقوم خادم AAA (TWAG) بإجراء المقارنة.

تنسيق الهوية

يستجيب الجهاز بهويته الدائمة (IMSI) بتنسيق NAI:

5055700000000000001@wlan.mnc057.mcc505.3gppnetwork.org

التنسيق: 0{IMSI}@wlan.mnc{MNC}.mcc{MCC}.3gppnetwork.org

ملاحظة - الرقم الأول، قبل IMSI هو الهوية، وعادة ما يكون 0 ولكن قد يكون رقمًا فرديًا آخر لبطاقات SIM / الهواتف متعددة IMSI.

مفتاح الجلسة الر��يسي (MSK)

مفتاح الجلسة الرئيسي (MSK) هو مفتاح تشفير 512 بت (64 بايت) يتم اشتقاقه خلال مصادقة EAP-AKA. يعمل كمادة المفتاح الجذرية لتأمين اتصال WiFi.

اشتقاق MSK:

  1. يقوم كل من UE وTWAG باستقلالية باشتقاق نفس MSK
  2. UE يشتق من CK/IK المحسوبة بواسطة SIM
  3. TWAG يشتق من CK/IK المستلمة من HSS
  4. MSK = PRF'(CK || IK، "المصادقة الكاملة"، IMSI، ...)

استخدام MSK:

  1. اشتقاق PMK: PMK = أول 256 بت (32 بايت) من MSK
  2. مصافحة WPA2 4-Way: يستخدم كل من UE وAP PMK لاشتقاق PTK
  3. تشفير البيانات: يتم تشفير جميع إطارات بيانات WiFi باستخدام المفتاح الزمني (TK) من PTK

لماذا MSK حاسم:

  • السرية: بدون MSK، ستكون حركة مرور WiFi غير مشفرة
  • السلامة: يمنع العبث بإطارات WiFi
  • ربط المصادقة: يربط مصادقة EAP بتشفير WiFi
  • حماية من إعادة التشغيل: يمنع MSK الجديد هجمات إعادة التشغيل
  • سرية مثالية للأمام: لا يؤثر اختراق MSK واحد على الآخرين

استعادة إعادة التزامن

إذا اكتشف الجهاز عدم تطابق في رقم التسلسل (SQN خارج التزامن)، يبدأ إعادة التزامن:

  1. يقوم الجهاز بحساب AUTS (رمز المصادقة - التزامن)
  2. يرسل EAP-AKA Synchronization-Failure مع AT-AUTS
  3. يقوم TWAG بإعادة توجيه AUTS إلى HSS
  4. يقوم HSS بإعادة تزامن رقم التسلسل وتوليد متجهات جديدة
  5. تتم إعادة المحاولة للمصادقة مع متجهات جديدة

هذا يكون شفافًا للمستخدم النهائي ولا يتطلب تدخل المشغل.


دليل التكوين

يتم تكوين TWAG عبر ملفات تكوين Elixir في دليل config/. يتم تكوين التشغيل الرئيسي في config/runtime.exs.

للنشر في الإنتاج، يتم إدارة التكوين مركزيًا. أدناه هو مرجع فقط، أي قيم تم تغييرها على عقدة الإنتاج ستفقد في المرة التالية التي يتم فيها تشغيل التنسيق التلقائي.

تكوين Diameter

موجود في config :diameter_ex:

config :diameter_ex,
diameter: %{
# اسم الخدمة لكتلة Diameter
service_name: :omnitouch_twag,

# عنوان IP المحلي لربط خدمة Diameter
listen_ip: "10.5.198.200",

# المنفذ المحلي لاتصالات Diameter (القياسي هو 3868)
listen_port: 3868,

# Diameter Origin-Host
host: "omnitwag",

# Diameter Origin-Realm (يتطابق مع مجال الشبكة الخاص بك)
realm: "epc.mnc057.mcc505.3gppnetwork.org",

# أقران Diameter (HSS، DRA، خوادم AAA)
peers: [
%{
# Diameter Origin-Host للقرين
host: "omni-hss01.epc.mnc057.mcc505.3gppnetwork.org",

# Diameter Origin-Realm للقرين
realm: "epc.mnc057.mcc505.3gppnetwork.org",

# عنوان IP للقرين (يمكن أن يكون HSS مباشرة أو DRA)
ip: "10.179.2.140",

# منفذ القرين (القياسي هو 3868)
port: 3868,

# استخدام TLS لأمان النقل
tls: false,

# بروتوكول النقل (:diameter_tcp أو :diameter_sctp)
transport: :diameter_tcp,

# بدء الاتصال بالقرين (true) أو الانتظار حتى يتصل القرين (false)
initiate_connection: true
}
]
}

تنسيق المجال يتبع 3GPP TS 23.003:

epc.mnc{MNC}.mcc{MCC}.3gppnetwork.org

حيث:

  • MNC = رمز الشبكة المحمولة (مثل، 057)
  • MCC = رمز الدولة المحمولة (مثل، 505 لأستراليا)

عرض واجهة الويب يظهر أقران Diameter

ملاحظة حول استخدام DRA: لاستخدام OmniDRA، قم بتكوين عنوان IP للقرين للإشارة إلى DRA بدلاً من الإشارة مباشرة إلى HSS. سيقوم DRA بعد ذلك بتوجيه الرسائل إلى HSS المناسب بناءً على قواعد التوجيه (المجال الوجهة، نطاق IMSI، إلخ).

تكوين RADIUS

موجود في config :omnitwag:

config :omnitwag,
radius_config: %{
# قائمة الشبكات الفرعية IP المسموح بها لعملاء RADIUS
# قائمة فارغة = السماح للجميع (غير موصى به للإنتاج)
allowed_source_subnets: ["10.7.15.0/24", "192.168.1.0/24"],

# السر المشترك لعملاء RADIUS
# يجب أن تستخدم جميع APs هذا السر
secret: "YOUR_STRONG_SECRET_HERE"
}

عرض واجهة الويب يظهر نقاط وصول WiFi المتصلة

أفضل ممارسات الأمان:

  • استخدم أسرار RADIUS مشتركة قوية (20+ حرف)
  • قم بتكوين allowed_source_subnets لتقييد وصول AP
  • استخدم قواعد جدار الحماية لتقييد الوصول إلى المنافذ 1812/1813

مثال على تكوين الشبكة الفرعية:

allowed_source_subnets: ["10.7.15.0/24", "192.168.1.0/24"]

إذا كانت فارغة، يتم السماح بجميع المصادر (مناسب فقط للمختبر/الاختبار).

تكوين مراقبة Prometheus

موجود في config :omnitwag:

config :omnitwag,
prometheus: %{
# المنفذ لنقطة نهاية مقاييس Prometheus
port: 9568
}

الوصول إلى المقاييس على: http://<twag-ip>:9568/metrics

ملخص المنافذ

المنفذالبروتوكولالغرض
1812UDPمصادقة RADIUS
1813UDPمحاسبة RADIUS
3868TCPDiameter (SWx إلى HSS/DRA)
443TCPلوحة التحكم HTTPS على الويب
8444TCPواجهة REST HTTPS
9568TCPمقاييس Prometheus

إعداد نقطة الوصول

نقاط الوصول المدعومة

يعمل OmniTWAG مع أي نقطة وصول WiFi تدعم:

  • WPA2-Enterprise (مصادقة 802.1X)
  • وظيفة عميل RADIUS
  • طريقة المصادقة EAP-AKA

المنصات المختبرة: Cisco Aironet، Aruba، Ubiquiti UniFi، Ruckus، نقاط الوصول المعتمدة على hostapd

متطلبات تكوين AP العامة

  1. وضع الأمان WPA2-Enterprise (802.1X)
  2. خادم RADIUS يشير إلى عنوان IP لـ TWAG
  3. منفذ مصادقة RADIUS: 1812
  4. منفذ محاسبة RADIUS: 1813 (اختياري ولكن موصى به)
  5. السر المشترك لـ RADIUS: يجب أن يتطابق مع تكوين TWAG
  6. طريقة EAP: EAP-AKA (أو "الجميع")

مثال على تكوين AP من Cisco

تكوين CLI:

! تكوين خادم RADIUS
radius-server host 10.5.198.200 auth-port 1812 acct-port 1813 key YOUR_SHARED_SECRET

! تكوين SSID مع 802.1X
dot11 ssid OPERATOR-WIFI
vlan 10
authentication open eap eap_methods
authentication network-eap eap_methods
authentication key-management wpa version 2

! ربط SSID بواجهة الراديو
interface Dot11Radio0
encryption mode ciphers aes-ccm
ssid OPERATOR-WIFI

واجهة الويب:

  1. انتقل إلى الأمانAAAخادم RADIUS
  2. أضف خادم RADIUS: 10.5.198.200:1812 مع السر المشترك
  3. انتقل إلى تكوين WLAN
  4. تعيين الأمان إلى WPA2-Enterprise
  5. تعيين طريقة EAP إلى EAP-AKA أو الجميع
  6. تعيين مجموعة خادم RADIUS

مثال على تكوين hostapd

لـ APs المعتمدة على Linux (OpenWrt، الأنظمة المدمجة):

# /etc/hostapd/hostapd.conf

interface=wlan0
driver=nl80211
ssid=OPERATOR-WIFI

# WPA2-Enterprise
wpa=2
wpa_key_mgmt=WPA-EAP
wpa_pairwise=CCMP
ieee8021x=1

# تكوين RADIUS
auth_server_addr=10.5.198.200
auth_server_port=1812
auth_server_shared_secret=YOUR_SHARED_SECRET

acct_server_addr=10.5.198.200
acct_server_port=1813
acct_server_shared_secret=YOUR_SHARED_SECRET

# تكوين EAP
eap_server=0

# Hotspot 2.0 (اختياري - لتحميل تلقائي)
interworking=1
internet=1
anqp_3gpp_cell_net=505,057
domain_name=wlan.mnc057.mcc505.3gppnetwork.org
nai_realm=0,wlan.mnc057.mcc505.3gppnetwork.org,0,21[2:1][5:7]
roaming_consortium=505057
hs20=1

مثال على تكوين Ubiquiti airOS

تعمل أجهزة airMAX من Ubiquiti (مثل NanoStation M2 وما شابه، airOS 6) مع TWAG باستخدام WPA2-Enterprise العادية (EAP)؛ لا يتطلب Hotspot 2.0. قم بتكوين ما يلي في علامة التبويب اللاسلكي للجهاز.

إعدادات اللاسلكي الأساسية

الإعدادالقيمة
وضع اللاسلكينقطة وصول
WDS (وضع جسر شفاف)معطل
SSIDOperatorWiFi
رمز الدولة / وضع 802.11حسب النشر (مثل B/G/N مختلط)
عرض القناة20 MHz

أمان اللاسلكي

الإعدادالقيمة
الأمانWPA2-AES
مصادقة WPAEAP
عنوان خادم المصادقة IP / المنفذ{TWAG_IP} : 1812
السر المشترك لخادم المصادقةالسر المشترك المكون لهذا IP المصدر لـ AP
محاسبة الخادممفعل
عنوان خادم المحاسبة / المنفذ{TWAG_IP} : 1813
السر المشترك لخادم المحاسبةالسر المشترك (نفسه مثل المصادقة)
قائمة ACL MACمعطلة

ملاحظات خاصة بـ airOS:

  • لا يرسل airOS خاصية NAS-IP-Address في RADIUS. يقوم TWAG بتحديد مثل هذه APs بواسطة عنوان IP المصدر الخاص بها، لذا لا تزال تظهر في قائمة نقاط الوصول ويمكن استهدافها لـ CoA.
  • لا يرسل airOS محاسبة مؤقتة من تلقاء نفسه. يقوم TWAG بالإعلان عن Acct-Interim-Interval (300 ثانية افتراضي) في Access-Accept، والذي يلتزم به airOS، لذا تصل تحديثات الاستخدام المؤقتة دون تكوين إضافي لـ AP.
  • يجب أن يتطابق السر المشترك مع بيانات اعتماد RADIUS التي تغطي نطاق IP المصدر لـ AP (انظر أسرار RADIUS المشتركة).

مثال على تكوين MikroTik RouterOS

تقوم APs من MikroTik (RouterOS) بتنفيذ WPA2-Enterprise عن طريق إعادة توجيه EAP إلى TWAG كخادم RADIUS خارجي. قم بتكوين ملف تعريف الأمان، عميل RADIUS، وتطبيق الملف الشخصي على واجهة اللاسلكي.

# ملف تعريف الأمان WPA2-Enterprise (EAP)
/interface wireless security-profiles
add name=twag-eap mode=dynamic-keys authentication-types=wpa2-eap \
unicast-ciphers=aes-ccm group-ciphers=aes-ccm

# عميل RADIUS لخدمة اللاسلكي، يشير إلى TWAG
/radius
add service=wireless address={TWAG_IP} secret=YOUR_SHARED_SECRET \
authentication-port=1812 accounting-port=1813 timeout=3s

# تمكين محاسبة RADIUS (تؤخذ فترة التحديث المؤقتة من `Acct-Interim-Interval` للخادم؛ RouterOS أيضًا لديه /radius incoming لـ CoA/Disconnect)
/radius incoming set accept=yes

# تطبيق الملف الشخصي على الراديو
/interface wireless
set wlan1 ssid=OperatorWiFi mode=ap-bridge band=2ghz-b/g/n \
security-profile=twag-eap disabled=no

ملاحظات خاصة بـ RouterOS:

  • قم بتعيين /radius incoming accept=yes حتى يتمكن TWAG من إرسال CoA / Disconnect (مثل، لتفكيك أو إعادة اعتماد جلسة).
  • يلتزم RouterOS بـ Acct-Interim-Interval الذي يعيده TWAG في Access-Accept؛ لا يلزم إعداد فترة مؤقتة منفصلة.
  • تأكد من أن IP المصدر لـ AP مغطى بنطاق بيانات اعتماد RADIUS على TWAG (انظر أسرار RADIUS المشتركة).

تقوم نقاط الوصول EAP من Omada بتنفيذ WPA2-Enterprise مع خادم RADIUS خارجي. يتم تكوينها من خلال وحدة تحكم Omada (OC200/OC300 الأجهزة، وحدة التحكم البرمجية، أو Omada Cloud) بدلاً من CLI لكل AP. أنشئ ملف تعريف RADIUS وطبقه على SSID.

ملف تعريف RADIUS (الإعدادات → الملفات الشخصية → RADIUS)

الإعدادالقيمة
عنوان خادم المصادقة IP / المنفذ{TWAG_IP} : 1812
السر المشترك لخادم المصادقةالسر المشترك لـ IP المصدر لهذا AP
المحاسبةمفعل
عنوان خادم المحاسبة IP / المنفذ{TWAG_IP} : 1813
السر المشترك لخادم المحاسبةالسر المشترك (نفسه مثل المصادقة)

شبكة لاسلكية (الإعدادات → الشبكات اللاسلكية → SSID الخاص بك)

الإعدادالقيمة
SSIDOperatorWiFi
الأمانWPA-Enterprise (WPA2)
ملف تعريف RADIUSالملف الشخصي الذي تم إنشاؤه أعلاه
محاسبة RADIUSمفعل

ملاحظات خاصة بـ Omada:

  • تلتزم Omada بـ Acct-Interim-Interval الذي يعيده TWAG في Access-Accept، لذا تصل تحديثات الاستخدام المؤقتة مع الافتراضي لـ TWAG (300 ثانية).
  • عادةً ما ترسل Omada NAS-IP-Address، لذا تظهر APs الخاصة بها مباشرة في قائمة نقاط الوصول (ت fallback IP المصدر مطلوب فقط لـ APs التي تتجاهل ذلك).
  • يجب أن يتطابق السر المشترك مع بيانات اعتماد RADIUS التي تغطي نطاق IP المصدر لـ AP (انظر أسرار RADIUS المشتركة).

أفضل ممارسات بنية الشبكة

مهم: ضع APs وTWAG في مقاطع الشبكة الموثوقة. استخدم قواعد جدار الحماية لـ:

  • السماح فقط لـ APs بالوصول إلى منافذ TWAG 1812/1813
  • السماح لـ TWAG بالوصول إلى منفذ HSS 3868
  • تقييد الوصول الإداري إلى لوحة التحكم الخاصة بـ TWAG (المنفذ 443)

تكامل Hotspot 2.0

نظرة عامة على Hotspot 2.0 (Passpoint)

Hotspot 2.0 (يسمى أيضًا Passpoint أو 802.11u) هو معيار من WiFi Alliance يمكّن اكتشاف الشبكات اللاسلكية الآمنة والتلقائية والاتصال دون تفاعل المستخدم. إنها التقنية الرئيسية لتحميل WiFi السلس.

الميزات الرئيسية:

  • اكتشاف الشبكة التلقائي: يجد الجهاز الشبكات المتوافقة بناءً على المعايير
  • المصادقة التلقائية: يستخدم بيانات اعتماد SIM (EAP-AKA) دون إدخال المستخدم
  • الارتباط الأولي المشفر: OSEN (المصادقة فقط من خادم OSU) للتوفير الآمن
  • اتفاقيات التجوال: يدعم الشبكات التي تمت زيارتها (مثل التجوال الخلوي)
  • ��لأولوية: يفضل الجهاز الشبكات المملوكة للمشغل

تكوين AP لـ Hotspot 2.0

المتطلبات لـ AP:

  1. دعم 802.11u: القدرة على استعلام/استجابة ANQP
  2. WPA2-Enterprise: مصادقة 802.1X
  3. دعم EAP-AKA: يجب أن يدعم طريقة EAP-AKA
  4. تكوين ANQP: الإعلان عن معلومات المشغل الصحيحة

مثال على التكوين (AP المعتمد على hostapd):

# تكوين Hotspot 2.0 / Passpoint
interworking=1
internet=1
asra=0
esr=0
uesa=0

# تكوين ANQP
anqp_3gpp_cell_net=505,057
domain_name=omnitouchns.com,wlan.mnc057.mcc505.3gppnetwork.org

# تكوين مجال NAI
nai_realm=0,wlan.mnc057.mcc505.3gppnetwork.org,0,21[2:1][5:7]
# التنسيق: {التشفير},{المجال},{طريقة EAP}[معرف المصادقة:قيمة المصادقة]
# 21 = EAP-AKA
# 2:1 = نوع الاعتماد: SIM
# 5:7 = طريقة EAP الممررة: لا شيء (EAP-AKA المباشر)

# اتحاد التجوال
roaming_consortium=505057
# MCC=505 (الولايات المتحدة)، MNC=057 (محدد للمشغل)

# معلومات المكان (اختياري)
venue_group=1
venue_type=8
venue_name=eng:Operator Public WiFi

# تكوين WPA2-Enterprise
wpa=2
wpa_key_mgmt=WPA-EAP
rsn_pairwise=CCMP
ieee8021x=1

# تكوين RADIUS (يشير إلى OmniTWAG)
auth_server_addr=10.5.198.200
auth_server_port=1812
auth_server_shared_secret=YOUR_SHARED_SECRET

acct_server_addr=10.5.198.200
acct_server_port=1813
acct_server_shared_secret=YOUR_SHARED_SECRET

# تكوين SSID
ssid=OperatorWiFi
utf8_ssid=1

# إشارة Hotspot 2.0
hs20=1
hs20_oper_friendly_name=eng:Operator WiFi Network

سلوك التحميل التلقائي

كيف يعمل التحميل التلقائي:

  1. يقوم الجهاز الذي يحتوي على ملف تعريف Passpoint بإجراء مسح WiFi دوري
  2. يرسل استعلام ANQP إلى نقاط الوصول المكتشفة
  3. إذا كانت استجابة ANQP تتطابق مع الملف الشخصي (MCC/MNC، اتحاد التجوال):
    • الأولوية عالية (الشبكة المنزلية) أو متوسطة (شريك التجوال)
  4. إذا كانت الأولوية ≥ العتبة والإشارة > الحد الأدنى:
    • مصادقة تلقائية EAP-AKA
  5. إذا كانت المصادقة ناجحة والأولوية > الاتصال الحالي:
    • التحويل إلى WiFi، قطع بيانات الخلوية
  6. مراقبة جودة الإشارة والحفاظ على الاتصال

عوامل الأولوية:

  1. الشبكة المنزلية مقابل التجوال: تفضل الشبكة المنزلية (تطابق MCC/MNC) على التجوال
  2. قوة الإشارة: تفضل الإشارة الأقوى
  3. الأمان: تفضل WPA2-Enterprise على المفتوحة/WPA2-PSK
  4. السياسة: يمكن للمشغل تكوين الشبكات المفضلة
  5. تجاوز المستخدم: يمكن للمستخدم تعطيل WiFi يدويًا أو تفضيل الخلوية

المراقبة والإدارة

لوحة التحكم على الويب

الوصول إلى لوحة المراقبة في الوقت الفعلي على: https://<twag-ip>/

الميزات:

  • عرض عملاء RADIUS: المشتركين النشطين، حالة المصادقة، تفاصيل الجلسة
  • عرض نقاط الوصول: نقاط الوصول المتصلة، عدد العملاء، معلومات SSID
  • عرض استخدام العميل: بيانات المحاسبة، وقت الجلسة، استخدام البيانات
  • عرض أقران Diameter: حالة الاتصال HSS/DRA

تكامل Prometheus

قم بتكوين Prometheus لجمع مقايي�� TWAG:

# prometheus.yml
scrape_configs:
- job_name: 'omnitwag'
static_configs:
- targets: ['10.5.198.200:9568']
metrics_path: '/metrics'
scrape_interval: 15s

المقاييس المتاحة:

مقاييس خادم RADIUS:

  • radius_access_request_count - إجمالي حزم RADIUS Access-Request المستلمة
  • radius_access_accept_count - إجمالي حزم Access-Accept المرسلة
  • radius_access_reject_count - إجمالي حزم Access-Reject المرسلة
  • radius_access_challenge_count - إجمالي حزم Access-Challenge المرسلة
  • radius_accounting_request_count{status_type} - إجمالي حزم Accounting-Request (موسومة حسب الحالة: بدء، توقف، تحديث مؤقت، محاسبة قيد التشغيل، محاسبة متوقفة)
  • radius_active_clients_count - العملاء المعتمدون حاليًا (يتم الاستطلاع كل 5 ثوانٍ)
  • radius_access_points_count - نقاط الوصول المسجلة (يتم الاستطلاع كل 5 ثوانٍ)

مقاييس مصادقة EAP-AKA:

  • eap_aka_identity_count - تبادلات هوية EAP-AKA
  • eap_aka_challenge_count - تبادلات تحدي EAP-AKA
  • eap_aka_sync_failure_count - حالات فشل التزامن (أحداث إعادة تزا��ن SQN)
  • eap_aka_auth_success_count - المصادقات الناجحة
  • eap_aka_auth_reject_count - المصادقات المرفوضة

مقاييس بروتوكول Diameter:

  • diameter_message_count{application, command, direction} - إجمالي رسائل Diameter (موسومة حسب التطبيق، نوع الأمر، والاتجاه)

مقاييس ذاكرة Erlang VM:

  • vm_memory_total - إجمالي كمية الذاكرة المخصصة (بالبايت)
  • vm_memory_processes - الذاكرة المستخدمة بواسطة عمليات Erlang (بالبايت)
  • vm_memory_processes_used - الذاكرة المستخدمة بواسطة عمليات Erlang باستثناء الذاكرة المخصصة غير المستخدمة (بالبايت)
  • vm_memory_system - الذاكرة المستخدمة بواسطة نظام تشغيل Erlang (بالبايت)
  • vm_memory_atom - الذاكرة المستخدمة بواسطة الذرات (بالبايت)
  • vm_memory_atom_used - الذاكرة المستخدمة بواسطة الذرات باستثناء الذاكرة المخصصة غير المستخدمة (بالبايت)
  • vm_memory_binary - الذاكرة المستخدمة بواسطة الثنائيات (بالبايت)
  • vm_memory_code - الذاكرة المستخدمة بواسطة ا��تعليمات ال��رمجية المحملة (بالبايت)
  • vm_memory_ets - الذاكرة المستخدمة بواسطة جداول ETS (بالبايت)

مقاييس نظام Erlang VM:

  • vm_system_info_process_count - العدد الحالي لعمليات Erlang
  • vm_system_info_port_count - العدد الحالي للمنافذ
  • vm_system_info_atom_count - العدد الحالي للذرات
  • vm_system_info_schedulers - عدد خيوط الجدولة
  • vm_system_info_schedulers_online - عدد المجدولين المتصلين حاليًا

مقاييس جدولة Erlang VM:

  • vm_statistics_run_queue - الطول الإجمالي لجميع قوائم التشغيل
  • vm_total_run_queue_lengths_total - الطول الإجمالي لجميع قوائم التشغيل (المجدولون الإجماليون)
  • vm_total_run_queue_lengths_cpu - الطول الإجمالي لقوائم تشغيل المجدول CPU
  • vm_total_run_queue_lengths_io - الطول الإجمالي لقوائم تشغيل المجدول IO

جمع المقاييس:

  • يتم إصدار مقاييس RADIUS وEAP-AKA في الوقت الفعلي عند حدوث الأحداث
  • يتم استطلاع عدد العملاء ونقاط الوصول النشطة كل 5 ثوانٍ
  • يتم استطلاع مقاييس VM كل 5 ثوانٍ من وقت تشغيل Erlang
  • يتم عرض جميع المقاييس بتنسيق Prometheus على http://<twag-ip>:9568/metrics

السجلات

يستخدم TWAG مسجل Elixir للتسجيل المنظم.

عرض السجلات (systemd):

# ذيل السجل في الوقت الفعلي
journalctl -u twag -f

# آخر 100 سطر
journalctl -u twag -n 100

# السجلات منذ آخر تشغيل
journalctl -u twag -b

# السجلات لفترة زمنية محددة
journalctl -u twag --since "2025-10-12 10:00:00" --until "2025-10-12 11:00:00"

رسائل السجل الرئيسية:

  • خادم RADIUS يستمع على المنفذ 1812 - تم بدء الخادم
  • من {IP}: تم استلام طلب الوصول - طلب RADIUS من AP
  • المرحلة 1: استجابة الهوية - الهوية الأولية EAP
  • المرحلة 2: تحدي AKA - تم إرسال التحدي إلى الجهاز
  • المصادقة مقبولة - المصادقة الناجحة
  • المصادقة مرفوضة - فشلت المصادقة
  • AP مسجلة: {IP} - تم اكتشاف AP جديدة

معايير الأداء

يتم قياس إنتاجية المصادقة وإشارات التحكم (المصادقات في الثانية، زمن تأخير الترميز، والذاكرة لكل عملية) ونشرها في مرجع معايير الأداء. تغطي الأرقام تكلفة التشفير لكل مصادقة (توليد متجه Milenage، تسلسل مفاتيح EAP-AKA'، إعادة المصادقة السريعة ERP) وإنتاجية الترميز في إشارة (تشفير/فك تشفير EAP وWLCP).


استكشاف الأخطاء وإصلاحها

فشل المصادقة

الأعراض: لا يمكن للعميل الاتصال بـ WiFi

خطوات التشخيص:

  1. تحقق من سجلات TWAG: journalctl -u twag -f
  2. تحقق من تطابق السر المشترك لـ RADIUS بين AP وTWAG
  3. تأكد من وصول حزم RADIUS إلى TWAG: tcpdump -i eth0 port 1812
  4. تحقق من توفير المشترك في HSS/التكوين

الأسباب الشائعة:

  • السر المشترك لـ RADIUS غير صحيح
  • جدار الحماية يحظر UDP 1812/1813
  • عدم تطابق RES/XRES (Ki SIM خاطئ أو تكوين HSS خاطئ)
  • رقم التسلسل (SQN) خارج التزامن (يجب أن يتم الاسترداد تلقائيًا عبر إعادة التزامن)
  • مشكلات الاتصال الشبكي بين AP وTWAG

مشكلات الاتصال Diameter

الأعراض: لا يتصل القرين Diameter بـ HSS/DRA

خطوات التشخيص:

  1. تحقق من الات��ال الشبكي: telnet {hss-ip} 3868
  2. تحقق من تكوين Diameter (Origin-Host، Origin-Realm، IP القرين)
  3. راجع سجلات HSS/DRA لمحاولات الاتصال
  4. تحقق من أن جدار الحماية يسمح TCP 3868

الأسباب الشائعة:

  • IP/منفذ القرين غير صحيح في التكوين
  • جدار الحماية يحظر TCP 3868
  • عدم تطابق Origin-Host/Realm
  • HSS/DRA لا تقبل الاتصال من TWAG

مشكلات الأداء

الأعراض: زمن المصادقة بطيء (>5 ثوانٍ)

خطوات التشخيص:

  1. تحقق من زمن استجابة HSS
  2. قياس زمن تأخير الشبكة: ping {hss-ip}، mtr {hss-ip}
  3. مراقبة استخدام موارد TWAG: top، htop
  4. مراجعة إعدادات مهلة طلب Diameter

الأسباب الشائعة:

  • مهلة استعلام HSS أو استجابة بطيئة
  • زمن تأخير الشبكة مرتفع
  • استنفاد موارد TWAG (CPU/ذاكرة)
  • عدد كبير جدًا من المصادقات المتزامنة

أدوات التصحيح

التقاط الحزم

# التقاط حركة مرور RADIUS
tcpdump -i eth0 -n port 1812 or port 1813 -w radius.pcap

# التقاط حركة مرور Diameter
tcpdump -i eth0 -n port 3868 -w diameter.pcap

# التقاط من AP محدد
tcpdump -i eth0 -n host 10.7.15.72 and port 1812 -w radius-ap1.pcap

تحليل باستخدام Wireshark (يدعم محللات RADIUS وDiameter).

وحدة التحكم التفاعلية

الارتباط بـ TWAG الجاري لتصحيح الأخطاء الحية:

# قشرة عن بعد لـ TWAG الجاري
iex --sname debug --remsh twag@hostname --cookie {cookie}

من وحدة التحكم IEx:

# قائمة بجميع العملاء المعتمدين
CryptoState.keys()

# الحصول على حالة عميل محدد
CryptoState.get("0505338057900001867@wlan.mnc057.mcc505.3gppnetwork.org")

# قائمة بجميع APs
APState.list()

# قائمة بجلسات المحاسبة
ClientUsage.list()

رسائل الخطأ الشائعة

رسالة الخطأالمعنىالحل
فشل التحقق من Message-Authenticatorعدم تطابق السر المشتركتحقق من تطابق السر المشترك لـ RADIUS على AP وTWAG
فشل التحقق من RES: المتوقع {XRES}، حصلت على {RES}استجابة المصادقة غير صحيحةتحقق من Ki SIM، تحقق من توفير HSS
مهلة اتصال القرين Diameterلا يمكن الوصول إلى HSSتحقق من الشبكة، جدار الحماية، تكوين HSS
فشل في فك تشفير رسالة EAPحزمة EAP مشوهةتحقق من البرنامج الثابت لـ AP، قد يحتاج AP إلى تحديث
نوع EAP-AKA غير معروفرسالة EAP-AKA غير مدعومةيستخدم الجهاز نوع EAP-AKA غير القياسي
يتطلب تزامن رقم التسلسلSQN خارج التزامنطبيعي، سيقوم الجهاز بإعادة التزامن تلقائيًا

الامتثال للمعايير

يطبق OmniTWAG المواصفات التالية من 3GPP وIETF:

  • 3GPP TS 23.402: تحسينات المعمارية للوصولات غير 3GPP
  • 3GPP TS 24.302: الوصول إلى EPC عبر الشبكات غير 3GPP
  • 3GPP TS 29.273: واجهات SWx/SWm المستندة إلى Diameter
  • 3GPP TS 33.402: جوانب الأمان للوصولات غير 3GPP
  • 3GPP TS 35.206: مواصفة خوارزمية Milenage
  • RFC 2865: مصادقة RADIUS
  • RFC 2866: محاسبة RADIUS
  • RFC 3579: دعم RADIUS لـ EAP
  • RFC 4187: بروتوكول المصادقة EAP-AKA
  • RFC 5448: EAP-AKA' (الإصدار المحسن)

تم نشر أداء التحكم في الطائرة مقابل هذه البروتوكولات في مرجع معايير الأداء.


الملخص

يوفر OmniTWAG، الذي أنشأته Omnitouch، حلاً كاملاً ومتوافقًا مع المعايير لتحميل WiFi 3GPP:

  1. نشر مرن: يدعم التفكيك المحلي أو حركة المرور الموجهة إلى المنزل
  2. مبني على المعايير: ينفذ بروتوكولات 3GPP SWx، EAP-AKA، RADIUS
  3. مصادقة آمنة: مصادقة متبادلة تعتمد على SIM مع إعادة تزامن تلقائية
  4. تشفير قوي: مفاتيح مشتقة من MSK توفر تشفير WPA2
  5. جاهز لـ Hotspot 2.0: يمكّن التحميل التلقائي الكامل بدون لمس
  6. تحكم المشغل: يحافظ على الهوية، السياسة، وفواتير اختيارية
  7. اتصال مرن: اتصال مباشر بـ HSS أو عبر OmniDRA للتوجيه/توازن الحمل

OmniTWAG - بوابة الوصول اللاسلكي الموثوقة حقوق الطبع والنشر © Omnitouch. جميع الحقوق محفوظة.