فتحت لورا عالمًا من إمكانيات إنترنت الأشياء ونقل الإشارات الرقمية عبر النطاقات الطويلة. من الصعب للغاية في الوقت الحالي العثور على شبكة شبكة مفتوحة المصدر لـ LORA التي تدعم IPv4 وبيانات التطبيق. يهدف هذا المشروع إلى توفير شبكة شبكية بسيطة لأجهزة Lora التي توجه حركة مرور IP إلى واجهة محلية ، مصممة بالكامل باستخدام Rust.
يعد هذا مفيدًا جدًا إذا كنت ترغب في إعداد شبكة من الأجهزة وإدارتها عن بُعد أو استخدام بروتوكولات IP الحالية للتفاعل مع تطبيقاتك.
تدعم الشبكة فقط 256 عقدًا ، مع سعة موسعة على خريطة الطريق. يعمل برنامج Mesh خارج الصندوق مع Lostik.
هذا البرنامج غير جاهز لاستخدام الإنتاج حتى الآن .
يتطلب تشغيل التطبيق أذونات الجذر. الوقوف في العقدة بسيطة مثل:
sudo ./loramesh
هذا ينشئ عقدة مع معرف 0 وواجهة شبكة محلية loratun0 التي يمكنك استخدامها لإرسال وتلقي الحزم في الشبكة.
يمكنك تكوين العقدة عن طريق إنشاء ملف /etc/loramesh/conf.yml ، يتم تضمين عينة في conf/ directory لهذا المستودع. يمكن أيضًا تمرير التكوين باعتباره ENV ، مثل LOMESH_DEBUG=true .
يجب أن يكون لكل عقدة تم نشرها على شبكة معرف فريد بين 0-255 .
يجب أن يكون لكل شبكة بوابة واحدة فقط. من الناحية النظرية لأن عنوان IP متشدد حاليًا لكل معرف عقدة ، مثل 172.16.0.<ID> ، قد لا تكون بوابات متعددة مشكلة.
البروتوكول ساذج للغاية وغير متزامن في الطبيعة. يتم دعم حزم IPv4 فقط ولا يتم ضمان التسليم. يوصى بأن يلتزم المستخدمون بـ UDP ويفترضون اتصالات ضيلة.
سيظل المستخدمون بحاجة إلى احترام قوانينهم المحلية فيما يتعلق بالإرسالات الإذاعية.
تم اختبار البرنامج فقط على Linux X86_64 و Raspberry PI.
جميع عمليات الإرسال هي قناة واحدة ، وبينما تم أخذ بعض الضمانات لمنع التصادم ، يكون ذلك أكثر صعوبة مع زيادة حجم الشبكة.
حاليًا استخدام Lora Mesh للوصول إلى الإنترنت الخارجي من خلال بوابة غير مدعومة. قد تتمكن من تكوين البوابة لتوجيه استعلامات وطلبات DNS مع البرامج المخصصة. حاليا تعمل كشبكة خاصة.
لا تنقذ البوابات حاليًا حالتها ، فقد تكون هذه مشكلة للعقد غير الموثوقة.
اعتراف خاص لأولئك الذين جعلوا هذا ممكنًا: