UART Wi-Fi ماڈیول والے مائیکرو کنٹرولر کو اس کے پیچھے موجود خدمت تک پہنچنے کے لیے VPN نافذ کرنے کی ضرورت نہیں۔ ماڈیول پہلے ہی TCP/IP اسٹیک چلا رہا ہے اور سیریل پورٹ پر ساکٹ فراہم کرتا ہے، اور اسی LAN میں موجود گیٹ وے اس ٹریفک کو سرنگ سے گزار سکتا ہے۔ یہ ڈیزائن صرف اس وقت کام کرتا ہے جب آپ چار سوالات کے جواب ترتیب سے دے سکیں، اس لیے اسے چیک لسٹ سمجھیں: پتہ، ساکٹ، راستہ، حد۔ جس پہلے دروازے پر ناکامی ہو وہیں رکیں، کیونکہ بعد والے اس کی تلافی نہیں کر سکتے۔

ہر طبقے کو ایک کام دیں

UART ربط مائیکرو کنٹرولر اور ماڈیول کے درمیان AT کمانڈز اور پے لوڈ لے کر جاتا ہے۔ ماڈیول Wi-Fi نیٹ ورک میں شامل ہوتا ہے اور اپنے ماخذ پتے سمیت IP کنکشن کا مالک ہوتا ہے۔ گیٹ وے سرنگ، اسناد اور فارورڈنگ پالیسی کا مالک ہوتا ہے۔ ان کاموں کو الگ رکھنا ہی ڈیزائن کو ہر مرحلے پر ڈی بگ کرنے کے قابل بناتا ہے۔

یہ علیحدگی گیٹ وے پالیسی لکھنے کا طریقہ بھی بدل دیتی ہے۔ ماخذ قاعدے میں ماڈیول کا LAN پتہ ہونا چاہیے، سیریل ربط کے پیچھے بیٹھے مائیکرو کنٹرولر کے لیے کوئی فرضی پتہ نہیں۔ اس ڈیزائن میں مائیکرو کنٹرولر کی اپنی کوئی IP شناخت نہیں، اور ایسا دکھانا کہ ہے، ایسا قاعدہ بناتا ہے جو کبھی مطابقت نہیں رکھتا۔

نیٹ ورک جو بھی ریزرویشن طریقہ سپورٹ کرتا ہو اس کے ذریعے ماڈیول کو مستقل پتہ دیں، یا آلات کو ان کے اپنے حصے میں رکھیں اور گیٹ وے کو انٹرفیس کے مطابق ملانے دیں۔ ری بوٹ کے بعد بدلنے والا پول پتہ آخرکار اس پالیسی کو توڑ دے گا جو لکھتے وقت درست تھی۔

کیا گیٹ وے ماڈیول کا پتہ نام دے سکتا ہے؟

کوئی بھی ساکٹ کھلنے سے پہلے یقینی بنائیں کہ ماڈیول منسلک ہے، اس کا پتہ ہے اور گیٹ وے اسے متوقع انٹرفیس پر دیکھ رہا ہے۔ یہی وہ دروازہ ہے جو سب سے زیادہ خاموشی سے ناکام ہوتا ہے، کیونکہ ماڈیول خوشی سے ایسی کنکشن کوشش کی اطلاع دے گا جو کبھی LAN سے باہر نہیں نکلی۔

AT+CWMODE=1
AT+CWJAP="lab-wifi","passphrase"
AT+CIPSTA?
AT+CIPMUX=0

ایک کنکشن کا موڈ کمانڈز کی ترتیب کو سادہ رکھتا ہے، اور ایک ہی خدمت سے بات کرنے والے ایک سینسر کے لیے یہی درست آغاز ہے۔ کئی کنکشن کا موڈ بعد کی ہر کمانڈ کی ساخت بدل دیتا ہے، اس لیے کسی دوسرے فرم ویئر ورژن سے مثال کاپی کرنے سے پہلے طے کریں کہ آپ کس موڈ میں ہیں۔

ماڈیول سے ساکٹ کھولیں

پتہ اور موڈ طے ہونے کے بعد ماڈیول نجی خدمت کے ساتھ TCP کنکشن کھول سکتا ہے۔ نیچے دیا گیا پتہ دستاویزی رینج کی مثال ہے؛ اس کی جگہ اپنا رکھیں اور وہی شکل برقرار رکھیں۔

AT+CIPSTART="TCP","10.90.0.20",9000
AT+CIPSEND=18
{"t":21.4,"rh":48}

وہ AT کمانڈ ایک سادہ TCP ساکٹ کھولتی ہے، اور ساکٹ سرنگ نہیں ہے: اس میں کوئی چیز VPN نہیں بناتی اور کوئی چیز پے لوڈ کو خفیہ نہیں کرتی۔ فرم ویئر کا TLS موڈ ایک الگ خصوصیت ہے جس کی اپنی کمانڈ اور اپنا سرٹیفکیٹ انتظام ہے، اور کوئی بھی UART ماڈیول دونوں میں سے ایک بھی سپورٹ نہ کرے۔ اوپر کی ساخت اس پر لاگو ہوتی ہے یہ ماننے کے بجائے اپنے فرم ویئر کے TCP/IP AT کمانڈ حوالہ کو دیکھیں۔

AT+CIPSEND میں پے لوڈ کی لمبائی اس سے مطابقت رکھنی چاہیے جو آپ واقعی بھیجتے ہیں، ورنہ ماڈیول ایسے بائٹس کا انتظار کرے گا جو کبھی نہیں آتے اور کنکشن اٹکا ہوا لگے گا۔ یہ ناکامی نیٹ ورک مسئلے جیسی لگتی ہے اور تقریباً ہمیشہ لمبائی میں ایک کی غلطی ہوتی ہے۔

کنکشن گیٹ وے کے ذریعے روانہ کریں

گیٹ وے کو نجی منزل تک راستہ، آلات کے نیٹ ورک سے سرنگ میں بھیجنے کی اجازت اور ماڈیول تک پہنچنے والا واپسی راستہ درکار ہے۔ اگر دور کا فریق آلات کے ذیلی نیٹ ورک کی طرف واپس راستہ نہیں دیتا، تو ڈیزائن کو جان بوجھ کر بنایا گیا ترجمہ قاعدہ درکار ہے، اور وہ قاعدہ اس ماخذ شناخت کو بدل دیتا ہے جو خدمت دیکھتی ہے۔

ip route get 10.90.0.20
sudo tcpdump -ni wg0 'host 10.90.0.20 and port 9000'
sudo conntrack -L | grep 9000

پہلے واپسی راستے پر نظر رکھیں۔ فارورڈ کیا گیا پیکٹ جو خدمت تک پہنچ کر کبھی واپس نہیں آتا، گیٹ وے پر کسی غلطی کے بغیر ماڈیول میں وقت کی حد پیدا کرتا ہے، جس سے لوگ گھنٹوں Wi-Fi ربط کو دیکھتے رہ جاتے ہیں۔ conntrack اندراج بتاتا ہے کہ گیٹ وے نے جواب دیکھا بھی یا نہیں۔

طے کریں کہ سرنگ واقعی کہاں ختم ہوتی ہے

سرنگ گیٹ وے پر شروع ہوتی ہے۔ یہ UART ربط کو خفیہ نہیں کرتی، اور ماڈیول سے گیٹ وے تک کے LAN حصے کو سرنگ کا حصہ نہیں بناتی۔ اس حصے پر جس چیز کو بھی تحفظ درکار ہو اسے اپنا طریقہ درکار ہے، اور اس مثال میں سادہ TCP کوئی TLS نہیں ہے۔

یہ بھی طے کریں کہ سرنگ گرنے پر کیا ہوتا ہے۔ اگر ترسیل صرف VPN کے ذریعے ہونی چاہیے، تو فارورڈنگ پالیسی کو متبادل راستے سے وہی منزل اجازت نہیں دینی چاہیے، کیونکہ بیک اپ راستہ شرط کو خاموشی سے کالعدم کر دیتا ہے۔ دوبارہ جڑنے کا رویہ محدود کریں تاکہ منقطع ماڈیول سیریل ربط یا دور کی خدمت کو دوبارہ کوششوں سے نہ بھر دے۔

چاروں جواب ایک ساتھ لکھیں: ماڈیول کا پتہ، ساکٹ کا ہدف، گیٹ وے کا راستہ اور جہاں خفیہ کاری شروع ہوتی ہے۔ اس آلے کو آگے ڈی بگ کرنے والے کو چاروں درکار ہوں گے، اور ان میں سے کوئی بھی صرف فرم ویئر سے اندازہ نہیں کیا جا سکتا۔

متعلقہ مضامین