شبکه به زبان ساده!
1.48K subscribers
237 photos
18 videos
17 files
44 links
📘 آموزش Network
🧠 هر روز یک دستور شبکه
🔥 هر روز یک نکته
🛡 هر روز یک نکته امنیت شبکه
🧩 هر روز یک سناریوی عیب‌یابی
Download Telegram
شبکه به زبان ساده!
Photo
🌐 BGP چطور اینترنت رو به هم وصل می‌کنه؟

اینترنت در واقع یه شبکه بزرگ و یکپارچه نیست؛ از هزاران شبکه مختلف تشکیل شده که هر کدوم متعلق به یه ISP، اپراتور، دیتاسنتر، شرکت بزرگ یا سازمانه. به هر کدوم از این شبکه‌های مستقل می‌گیم AS یا Autonomous System. مثلاً یه ISP یه AS داره، یه اپراتور موبایل یه AS دیگه و یه شرکت بزرگ هم ممکنه AS خودش رو داشته باشه.

حالا مشکل اینجاست که این شبکه‌ها باید بدونن برای رسیدن به شبکه‌های دیگه از چه مسیری برن. مثلاً فرض کن یه ISP توی ایران می‌خواد به یه سرور توی دیتاسنتر آلمان وصل بشه. ISP باید بدونه Prefix مربوط به اون سرور از کدوم شبکه قابل دسترسیه و برای رسیدن به اون باید بسته رو به کدوم شبکه بعدی تحویل بده. اینجاست که BGP وارد میشه.


در اصل زبان ارتباطی بین شبکه‌های مستقله. شبکه‌ها با BGP به هم اعلام می‌کنن که «من به این Prefixها دسترسی دارم». مثلاً یه شبکه اعلام می‌کنه که Prefix زیر متعلق به منه و می‌تونم ترافیک مربوط بهش رو دریافت کنم:
203.0.113.0/24
شبکه‌های اطراف این Route رو یاد می‌گیرن و ممکنه اون رو به شبکه‌های دیگه هم اعلام کنن. این اطلاعات کم‌کم بین ASهای مختلف پخش میشه و شبکه‌ها متوجه میشن برای رسیدن به Prefixهای مختلف چه مسیرهایی وجود داره.
مثلاً فرض کن سه شبکه داریم:
AS100 → AS200 → AS300

AS300
صاحب یه Prefix خاصه. AS300 اون Prefix رو به AS200 اعلام می‌کنه، AS200 هم متوجه میشه برای رسیدن به اون Prefix باید از AS300 استفاده کنه. بعد همین Route ممکنه به AS100 هم برسه. در نتیجه AS100 می‌فهمه برای رسیدن به اون Prefix می‌تونه از مسیر AS100 → AS200 → AS300 استفاده کنه.
حالا ممکنه فقط یه مسیر وجود نداشته باشه. مثلاً AS100 برای رسیدن به AS300 دو مسیر مختلف داشته باشه:
AS100 → AS200 → AS300
یا:
AS100 → AS400 → AS500 → AS300

اینجا BGP قرار نیست صرفاً بگه «هر کدوم کوتاه‌تره همونو انتخاب کن». BGP بر اساس یه سری Attribute و Policy تصمیم می‌گیره کدوم Route ترجیح داده بشه. چیزهایی مثل LOCAL_PREF، AS_PATH، MED و نوع Route می‌تونن روی انتخاب مسیر تأثیر بذارن.

یکی از قسمت‌های مهم BGP هم AS_PATH هست. هر Route وقتی از یک AS عبور می‌کنه، شماره اون AS به مسیر اضافه میشه. مثلاً:
AS100 → AS200 → AS300

حالا اگر AS100 یه Route رو دوباره دریافت کنه و داخل AS_PATH ببینه که خودش یعنی AS100 قبلاً توی مسیر وجود داشته، می‌فهمه این مسیر می‌تونه باعث Loop بشه و اون Route رو قبول نمی‌کنه. این یکی از مکانیزم‌های مهم BGP برای جلوگیری از Loop بین ASهاست.

یه نکته خیلی مهم هم اینه که BGP فقط برای پیدا کردن مسیر نیست؛ Policy توی BGP خیلی مهمه. یعنی صاحب شبکه می‌تونه تعیین کنه چه Routeهایی رو به چه شبکه‌ای Advertise کنه و برای انتخاب مسیرهای مختلف چه ترجیحی داشته باشه.

مثلاً یه ISP ممکنه دو تا Provider اینترنت داشته باشه. می‌تونه با Policyهای BGP کاری کنه که ترافیک بعضی Prefixها از Provider اول عبور کنه و ترافیک بعضی مقصدهای دیگه از Provider دوم. پس BGP فقط یه نقشه ساده از اینترنت نیست؛ در واقع شبکه‌ها باهاش روی نحوه تبادل و انتخاب مسیر هم سیاست‌گذاری می‌کنن.

حالا وقتی تو از خونه می‌خوای به یه سایت خارجی وصل بشی، بسته‌ات ممکنه از چندین شبکه مختلف عبور کنه. هر شبکه در مسیر، بر اساس Routing Table خودش تصمیم می‌گیره بسته رو به کدوم Next-Hop بفرسته. BGP هم کمک کرده این شبکه‌ها اطلاعات لازم درباره Prefixهای شبکه‌های دیگه رو داشته باشن.
پس خیلی خلاصه اگر بخوایم قضیه رو جمع کنیم، DNS معمولاً اسم دامنه رو به IP تبدیل می‌کنه، BGP به شبکه‌های مستقل کمک می‌کنه بفهمن Prefixهای مختلف از چه مسیرهایی قابل دسترسی هستن، و IP Routing داخل هر شبکه تصمیم می‌گیره بسته رو به کدوم Next-Hop بفرسته.
مثلاً وقتی می‌زنی:
example.com
اول باید IP مقصد مشخص بشه. بعد بسته از شبکه خودت وارد مسیر اینترنت میشه و روترها بر اساس Routeهایی که دارن تصمیم می‌گیرن بسته رو به کجا بفرستن. این Routeها در مقیاس بین شبکه‌های مستقل، بخش مهمی از اطلاعاتشون رو از BGP می‌گیرن.
به خاطر همین هم BGP یکی از پایه‌های اصلی اینترنت محسوب میشه. چون اینترنت از هزاران شبکه مستقل تشکیل شده و این شبکه‌ها باید somehow بتونن مسیرهای خودشون رو به هم اعلام کنن و درباره Reachability شبکه‌های مختلف اطلاعات داشته باشن.
یه مثال خیلی ساده بخوایم بزنیم: اینترنت رو مثل یه سیستم بزرگ از شهرها و جاده‌ها در نظر بگیر. هر AS مثل یه شهر یا مجموعه جاده‌ای مستقله، Prefixها مثل محدوده‌های مقصد هستن و BGP مثل سیستمیه که به شبکه‌ها میگه برای رسیدن به مقصدهای مختلف چه مسیرهایی وجود داره و کدوم مسیر طبق Policyهای شبکه ترجیح داده میشه.
❤7🤩3
شبکه به زبان ساده!
Photo
چرا چند سایت یک IP دارند؟

چون در اینترنت IP الزاماً نماینده‌ی یک سایت نیست؛ یک IP می‌تواند متعلق به یک سرور، کلاستر، Load Balancer یا سرویس ابری باشد و چندین دامنه روی همان زیرساخت میزبانی شوند.

فرض کن این دامنه‌ها را داریم:
site1.com
site2.com
site3.com

ممکن است DNS هر سه به یک IP اشاره کند:
site1.com → 185.10.20.30
site2.com → 185.10.20.30
site3.com → 185.10.20.30

وقتی کاربر به آن IP وصل می‌شود، وب‌سرور از روی نام دامنه‌ای که درخواست شده تشخیص می‌دهد باید کدام سایت را تحویل بدهد.
مثلاً درخواست HTTP/HTTPS شامل اطلاعاتی مثل این است:
Host: site1.com

یا در HTTPS، نام دامنه معمولاً از طریق SNI در TLS مشخص می‌شود:
Client
│
│ site1.com
▼
185.10.20.30
│
├── site1.com
├── site2.com
└── site3.com

این تکنیک به‌خصوص در Virtual Hosting خیلی رایج است.
یک دلیل مهم دیگر: CDN و Load Balancer
گاهی اصلاً IP مربوط به سرور اصلی سایت نیست.
مثلاً چندین سایت پشت یک CDN یا Load Balancer قرار گرفته‌اند:
┌── Web Server 1
site1.com ───────┤
├── Web Server 2
site2.com ──► CDN / Load Balancer
├── Web Server 3
site3.com ───────┤
└── Web Server 4

در این حالت ممکن است صدها یا حتی تعداد بسیار زیادی دامنه، IPهای مشترک CDN را داشته باشند.
پس اگر یک IP را پیدا کردیم، نمی‌توانیم بگوییم «این IP متعلق به همین سایت است»
دقیقاً. ممکن است یک IP:
فقط یک سایت داشته باشد.
چند سایت روی یک سرور داشته باشد.
متعلق به Load Balancer باشد.
متعلق به CDN باشد.
بین چند مشتری یک سرویس ابری مشترک باشد.
در IPv4 به‌دلیل کمبود آدرس، بین سرویس‌های مختلف اشتراکی باشد.
برای همین در شناسایی زیرساخت یک سایت، صرفاً پیدا کردن IP کافی نیست و باید DNS، رکوردهای A/AAAA، CNAME، SNI، HTTP Host و معماری CDN/Load Balancer را هم در نظر گرفت.

@ModernLan
👍5❤3👏1
AI Agent چیه؟

در واقع AI Agent فقط یه هوش مصنوعی نیست که ازش سؤال بپرسی و جواب بگیری؛ یه جور سیستم هوشمنده که بهش یه هدف میدی و خودش می‌تونه برای رسیدن به اون هدف چند مرحله رو پشت سر هم انجام بده. مثلاً بهش میگی «وضعیت سرورهای شبکه رو بررسی کن و اگه مشکلی وجود داشت گزارش بده»، Agent میاد اطلاعات رو از ابزارهای مختلف جمع می‌کنه، لاگ‌ها رو بررسی می‌کنه، وضعیت CPU و RAM و سرویس‌ها رو می‌بینه، مشکل احتمالی رو تحلیل می‌کنه و بعد بر اساس نتیجه تصمیم می‌گیره چه کاری انجام بشه.

حتی اگه به ابزارهای لازم دسترسی داشته باشه، می‌تونه با SSH به سرور وصل بشه، یه سرویس رو بررسی یا در شرایط مشخص Restart کنه، دوباره وضعیت رو تست کنه و در آخر نتیجه رو گزارش بده.

نتیجه رو بررسی می‌کنه و اگه لازم باشه دوباره مرحله بعدی رو انجام میده. تفاوت اصلی AI Agent با یه Chatbot معمولی هم دقیقاً همینجاست؛ Chatbot معمولاً منتظر سؤال می‌مونه و جواب میده، ولی Agent می‌تونه برای رسیدن به یه هدف، خودش چندین مرحله رو مدیریت کنه.
البته خود مدل زبانی به تنهایی لزوماً Agent نیست؛ معمولاً Agent از چند بخش تشکیل میشه، مثل مدل هوش مصنوعی، ابزارها و APIها، Memory برای نگهداری اطلاعات، منطق تصمیم‌گیری و دسترسی به سیستم‌هایی که قراره باهاشون کار کنه. مثلاً توی Network و Cyber Security میشه یه AI Agent ساخت که لاگ‌های Firewall و SIEM رو بررسی کنه، رفتارهای مشکوک رو پیدا کنه، وضعیت تجهیزات شبکه رو مانیتور کنه، برای Troubleshooting اطلاعات جمع کنه و حتی طبق Policy مشخص بعضی Actionها رو انجام بده.


@ModernLAN
❤7👍4
شبکه به زبان ساده!
Photo
RAID
رو اگه بخوایم خیلی کامل نگاه کنیم، یه روشه برای اینکه چندتا هارد یا SSD رو کنار هم قرار بدیم تا بسته به نوع RAID، یا سرعت بیشتری بگیریم، یا اگر یکی از دیسک‌ها خراب شد اطلاعاتمون همچنان قابل دسترس باشه، یا ترکیبی از این دوتا داشته باشیم.

اولین مدل RAID 0 هست که تمرکزش روی سرعته. توی RAID 0 اطلاعات بین دیسک‌ها تقسیم میشه یا همون Striping؛ مثلاً اگه دو تا دیسک 1 ترابایتی داشته باشیم، بخشی از اطلاعات روی دیسک اول و بخش دیگه روی دیسک دوم نوشته میشه و چون هر دو دیسک همزمان کار می‌کنن، سرعت خواندن و نوشتن می‌تونه بیشتر بشه و کل ظرفیت هم حدود 2 ترابایت میشه، ولی یه ایراد خیلی مهم داره و اونم اینه که هیچ تحمل خرابی نداره؛ یعنی اگه فقط یکی از دیسک‌ها خراب بشه، کل RAID 0 از بین میره، پس برای اطلاعات مهم اصلاً گزینه مناسبی نیست.

بعد می‌رسیم به RAID 1 که بهش Mirroring هم میگن. اینجا اطلاعات روی دو دیسک به صورت یکسان ذخیره میشه؛ یعنی اگه روی دیسک اول اطلاعات A و B و C داشته باشیم، همون اطلاعات روی دیسک دوم هم وجود داره. در نتیجه اگه یکی از دیسک‌ها خراب بشه، دیسک دوم همچنان اطلاعات رو داره و سیستم می‌تونه به کارش ادامه بده.

مثلاً دو تا دیسک 1 ترابایتی در RAID 1 در مجموع فقط حدود 1 ترابایت فضای قابل استفاده بهت میدن، چون نصف ظرفیت صرف کپی اطلاعات میشه. RAID 5 یه مرحله حرفه‌ای‌تره و از ترکیب Striping و Parity استفاده می‌کنه. یعنی اطلاعات بین دیسک‌ها پخش میشه و در کنارش اطلاعات Parity هم ذخیره میشه تا اگر یکی از دیسک‌ها خراب شد، RAID بتونه اطلاعات از دست‌رفته رو از روی بقیه دیسک‌ها بازسازی کنه.

مثلاً اگه 4 تا دیسک 1 ترابایتی داشته باشیم، حدود 3 ترابایت فضای قابل استفاده داریم و می‌تونیم خرابی یک دیسک رو تحمل کنیم. البته موقع Rebuild کردن RAID 5 فشار زیادی روی دیسک‌های باقی‌مونده وارد میشه و مخصوصاً توی آرایه‌های بزرگ این موضوع مهمه. RAID 6 شبیه RAID 5 هست ولی به جای یک Parity، دو تا Parity داره؛ در نتیجه می‌تونه خرابی همزمان دو دیسک رو تحمل کنه. مثلاً با 6 تا دیسک 1 ترابایتی، حدود 4 ترابایت فضای قابل استفاده خواهیم داشت. طبیعتاً در مقابل امنیت بیشتری می‌گیریم ولی محاسبات و عملیات نوشتن پیچیده‌تر میشه و بخشی از ظرفیت هم برای دو Parity مصرف میشه. آخرش می‌رسیم به RAID 10 که ترکیبی از RAID 1 و RAID 0 هست و معمولاً با اسم RAID 1+0 هم می‌بینیمش.


اینجا اول دیسک‌ها به صورت Mirror جفت میشن و بعد اطلاعات بین این جفت‌ها Strip میشه؛ مثلاً با 4 تا دیسک 1 ترابایتی، حدود 2 ترابایت فضای قابل استفاده داریم، ولی همزمان Performance خوبی داریم و در برابر خرابی دیسک هم مقاوم‌تر هستیم. البته تحمل خرابی RAID 10 بستگی داره کدوم دیسک‌ها خراب بشن؛ اگر از هر جفت Mirror حداقل یک دیسک سالم باقی بمونه، آرایه می‌تونه به کارش ادامه بده، ولی اگر هر دو دیسک یک جفت از بین برن، اون بخش دیگه قابل بازیابی نیست.

@ModernLan
❤8🔥2
👏3❤2🔥1
شبکه به زبان ساده!
Photo
SCADA چیست؟


مخفف این فناوری Supervisory Control And Data Acquisition یعنی کنترل نظارتی و جمع‌آوری داده است. به زبان ساده، SCADA یک سیستم نرم‌افزاری و سخت‌افزاریه که برای مانیتورینگ، جمع‌آوری اطلاعات و کنترل تجهیزات صنعتی از یک نقطه مرکزی استفاده میشه.

مثلاً فرض کن یک کارخانه آب و فاضلاب داریم که ده‌ها پمپ، شیر، مخزن، سنسور فشار و سنسور دما داره. اپراتور لازم نیست کنار تک‌تک این تجهیزات باشه؛ سیستم SCADA اطلاعات اون‌ها رو جمع می‌کنه و روی یک صفحه مانیتور نشون میده و در بعضی موارد امکان ارسال فرمان به تجهیزات رو هم فراهم می‌کنه.
معماری معمول SCADA تقریباً این شکلیه:
Operator
│
▼
┌─────────────┐
│ SCADA Server│
└──────┬──────┘
│
Industrial Network
│
┌──────┴──────┐
▼ ▼
PLC/RTU PLC/RTU
│ │
Sensors Actuators
Motors Valves
Pumps Relays

اجزای اصلی SCADA
1. PLC
کنترلرهای صنعتی هستن که مستقیماً با تجهیزات و سنسورها کار می‌کنن؛ مثلاً دمای یک مخزن رو می‌خونن یا فرمان روشن شدن یک موتور رو اجرا می‌کنن.
2. RTU
مخفف Remote Terminal Unit هست و بیشتر در مکان‌های دور از مرکز استفاده میشه؛ مثلاً ایستگاه‌های پمپاژ، خطوط انتقال نفت و گاز یا تأسیسات برق.
3. SCADA Server
مرکز جمع‌آوری و پردازش اطلاعاته. داده‌هایی که از PLC و RTU میان اینجا دریافت و ذخیره میشن.
4. HMI
رابط گرافیکی‌ایه که اپراتور از طریق اون وضعیت سیستم رو می‌بینه و در صورت مجاز بودن می‌تونه فرمان ارسال کنه.
مثلاً:
Pump 01 → RUNNING
Pump 02 → STOPPED
Tank Level → 78%
Pressure → 4.2 bar
Temperature → 31°C

5. Historian
اطلاعات و رخدادهای سیستم رو برای مدت طولانی ذخیره می‌کنه تا بعداً بشه روندها، خطاها و تغییرات رو بررسی کرد.
SCADA با شبکه معمولی چه فرقی داره؟
اینجا قسمت جالب ماجراست. SCADA معمولاً بخشی از یک شبکه صنعتی یا OT (Operational Technology) محسوب میشه.
در شبکه‌های IT معمولاً تمرکز زیادی روی چیزهایی مثل:

Confidentiality → Integrity → Availability

داریم، اما در محیط‌های صنعتی Availability و Safety اهمیت بسیار زیادی پیدا می‌کنن؛ چون از کار افتادن یک سیستم صنعتی ممکنه فقط باعث قطع یک سرویس نشه و روی تجهیزات فیزیکی و فرآیند واقعی تأثیر بذاره.

برای ارتباط بین تجهیزات هم پروتکل‌هایی مثل:
Modbus / Modbus TCP
DNP3
OPC UA
IEC 60870-5-104
IEC 61850
EtherNet/IP
PROFINET
استفاده میشن.
مثلاً یک سناریوی ساده:
Sensor
↓
PLC
↓
Industrial Switch
↓
SCADA Server
↓
HMI
↓
Operator

اپراتور روی HMI می‌بینه فشار یک خط بالا رفته، SCADA این داده رو از PLC دریافت کرده و PLC هم مقدار فشار رو از سنسور گرفته. اگر سیستم برای کنترل خودکار طراحی شده باشه، PLC می‌تونه بر اساس منطق کنترلی خودش یک شیر یا پمپ رو هم کنترل کنه.
نکته مهم: SCADA خودش لزوماً «کنترل‌کننده اصلی» نیست؛ در بسیاری از معماری‌ها SCADA بیشتر نقش نظارت، نمایش، ثبت داده و ارسال فرمان‌های سطح بالا رو داره و کنترل بلادرنگ فرآیند توسط PLC/RTU انجام میشه.

@ModernLan
❤8
شبکه به زبان ساده!
Photo
IMS چیست؟

فناوری IP Multimedia Subsystem در واقع یه معماری توی شبکه اپراتورهای مخابراتیه که باعث میشه سرویس‌هایی مثل تماس صوتی، تماس تصویری و پیامک روی بستر IP ارائه بشن. یعنی به زبان ساده‌تر، اپراتور به‌جای اینکه برای هر سرویس یه شبکه کاملاً جدا داشته باشه، از IMS استفاده می‌کنه تا سرویس‌های مخابراتی رو روی شبکه IP مدیریت و کنترل کنه. مثلاً وقتی با گوشی از طریق VoLTE تماس می‌گیری، خود LTE بیشتر نقش بستر انتقال IP رو داره و این IMS هست که سرویس تماس رو مدیریت می‌کنه.


گوشی اول از طریق شبکه LTE به شبکه Core اپراتور وصل میشه و بعد برای استفاده از سرویس IMS، با بخش P-CSCF ارتباط برقرار می‌کنه. P-CSCF در واقع اولین نقطه تماس گوشی با شبکه IMS محسوب میشه و پیام‌های SIP گوشی از این مسیر وارد IMS میشن. بعد I-CSCF وظیفه پیدا کردن مسیر مناسب داخل شبکه IMS رو داره و S-CSCF هم بخش اصلی کنترل Session محسوب میشه؛ یعنی ثبت کاربر، مدیریت Sessionهای SIP و اجرای منطق سرویس‌ها تا حد زیادی توسط S-CSCF انجام میشه.

در کنار این‌ها HSS یا در معماری‌های جدیدتر اجزای مبتنی بر UDM، اطلاعات مشترک، احراز هویت و پروفایل سرویس کاربر رو نگهداری می‌کنن. برای مثال وقتی سیم‌کارت و گوشی می‌خوان روی IMS ثبت بشن، اطلاعات لازم برای Authentication و مشخص شدن سرویس‌های مجاز کاربر از دیتابیس‌های Core گرفته میشه. یکی از قسمت‌های مهم IMS هم SIP هست که برای Signaling و برقراری و کنترل Session استفاده میشه؛ مثلاً وقتی تماس می‌گیری، پیام‌های SIP برای ایجاد Session، تغییر وضعیت تماس و پایان دادن به تماس رد و بدل میشن، در حالی که خود صدای تماس معمولاً از طریق RTP منتقل میشه.


پس اگه بخوای خیلی ساده مسیر رو ببینی، گوشی از طریق LTE یا Wi-Fi به شبکه IP اپراتور وصل میشه، بعد وارد IMS میشه و اجزایی مثل P-CSCF، I-CSCF و S-CSCF درخواست‌ها و Session رو مدیریت می‌کنن و در نهایت سرویس‌هایی مثل VoLTE، VoWiFi، VoNR و حتی SMS over IMS ارائه میشن. نکته مهم اینه که IMS خودش اینترنت نیست؛ یه معماری سرویس‌دهی و کنترل روی شبکه IP اپراتوره که کمک می‌کنه سرویس‌های مخابراتی مدرن روی IP اجرا بشن.


برای همین وقتی از VoLTE استفاده می‌کنی، تماس دیگه مثل تماس سنتی 2G از Circuit Switching قدیمی عبور نمی‌کنه، بلکه Signaling و کنترل تماس توسط IMS انجام میشه و رسانه صوتی هم روی بستر Packet/IP منتقل میشه. در واقع IMS یکی از اجزای اصلی مهاجرت شبکه‌های مخابراتی از معماری‌های قدیمی Circuit-Switched به معماری All-IP محسوب میشه.

@ModernLan
❤5👍4⚡1
وقتی شیش تا کتاب شبکه بالای سرتن و هنوز میگی «یه فصل دیگه هم بخونم» 😂
🤣12❤4
پشت صحنه‌ی یک Login ساده چه اتفاقاتی می‌افتد؟
❤4🔥3👏1
شبکه به زبان ساده!
پشت صحنه‌ی یک Login ساده چه اتفاقاتی می‌افتد؟
پشت صحنه‌ی یک Login ساده چه اتفاقاتی می‌افتد؟

وقتی توی یک سایت یوزرنیم و پسوردت رو وارد می‌کنی و روی Login می‌زنی، در ظاهر فقط دو تا فیلد و یه دکمه می‌بینی، ولی پشت صحنه چند مرحله اتفاق می‌افته. اول مرورگر معمولاً یک اتصال امن HTTPS به سرور برقرار می‌کنه؛ یعنی ارتباط بین کلاینت و سرور با TLS رمزنگاری میشه تا اطلاعات ورود در مسیر به‌صورت قابل‌خواندن منتقل نشن. بعد اطلاعات Login، معمولاً با یک درخواست HTTP مثل POST به سرور ارسال میشه. سرور درخواست رو دریافت می‌کنه و بررسی می‌کنه که ساختار درخواست درست باشه، کاربر وجود داشته باشه و محدودیت‌هایی مثل Rate Limit یا تعداد تلاش ناموفق رعایت شده باشه. حالا قسمت مهم ماجرا شروع میشه: سرور نباید پسورد واقعی کاربر رو به شکل Plain Text داخل دیتابیس نگه داشته باشه؛ معمولاً یک Password Hash امن مثل Argon2id، bcrypt یا scrypt در دیتابیس ذخیره شده و سرور پسورد واردشده رو با مقدار ذخیره‌شده مقایسه می‌کنه. اگر اطلاعات درست باشه، Authentication موفق میشه و سرور برای کاربر یک Session ایجاد می‌کنه یا یک Token مثل Access Token صادر می‌کنه. در مدل Session-based، معمولاً یک Session ID داخل Cookie قرار می‌گیره و مرورگر از درخواست‌های بعدی اون Cookie رو همراه خودش ارسال می‌کنه. سرور با استفاده از Session ID می‌فهمه این درخواست مربوط به کدوم کاربره. Cookie مربوط به احراز هویت هم معمولاً باید ویژگی‌هایی مثل Secure، HttpOnly و در بسیاری از سناریوها SameSite داشته باشه. بعد از Login موفق، سرور ممکنه اطلاعاتی مثل نقش کاربر، سطح دسترسی و وضعیت حساب رو هم بررسی کنه؛ چون Authentication فقط میگه «تو کی هستی؟»، ولی Authorization مشخص می‌کنه «چه کارهایی اجازه داری انجام بدی؟». بنابراین یک Login ساده در ظاهر فقط وارد کردن Username و Password هست، ولی پشت صحنه زنجیره‌ای از HTTPS/TLS → HTTP Request → Validation → Password Hash Verification → Session/Token → Authorization اتفاق می‌افته. و دقیقاً به همین دلیل Login یکی از مهم‌ترین نقاط امنیتی هر Web Application محسوب میشه؛ چون اگر TLS، مدیریت Session، Hash پسورد، Rate Limiting، Cookieها یا کنترل دسترسی درست پیاده‌سازی نشن، مهاجم می‌تونه از همین قسمت برای حملاتی مثل Credential Stuffing، Brute Force، Session Hijacking یا Account Takeover استفاده کنه.


@ModernLan
❤10
HSRP vs VRRP تفاوت دو پروتکل مهم Gateway Redundancy
🔥7
This media is not supported in your browser
VIEW IN TELEGRAM
​همه فکر میکنن IT یعنی چند تا کلیک و یه سیستم روشن....

ولی کسی نمیدونه پشت این لبخند یه آدم خسته هست که با شبکه های به هم ریخته رک های داغ کابل های بی صاحب و سرورهای بدقلق هر روز یه جنگ واقعی داره.
👍17❤‍🔥1
شبکه به زبان ساده!
Photo
🔎 Google Dorking | جستجوی پیشرفته گوگل

گوگل فقط برای سرچ معمولی نیست؛ با چند تا Operator می‌تونی نتایج رو خیلی دقیق‌تر فیلتر کنی و برای OSINT، Bug Bounty و Security Research ازش استفاده کنی 👇
site:example.com

🔹 نمایش نتایج فقط از یک سایت یا دامنه
site:example.com -shop

🔹 حذف نتایجی که شامل shop هستند
"exact phrase"

🔹 جستجوی دقیق یک عبارت
intitle:login

🔹 پیدا کردن صفحاتی که login داخل عنوان آن‌هاست
inurl:login

🔹 پیدا کردن URLهایی که شامل login هستند
inurl:admin

🔹 پیدا کردن URLهایی که شامل admin هستند
intext:login

🔹 پیدا کردن صفحاتی که کلمه login داخل متن آن‌هاست
filetype:pdf cybersecurity

🔹 پیدا کردن فایل‌های PDF مرتبط با یک موضوع
filetype:docx "project plan"

🔹 جستجوی فایل‌های Word با عبارت مشخص
filetype:xls "financial report"

🔹 جستجوی فایل‌های Excel مرتبط با یک عبارت
filetype:csv data

🔹 جستجوی فایل‌های CSV
site:example.com filetype:pdf

🔹 پیدا کردن PDFهای یک سایت مشخص
site:.com intitle:"index of"

🔹 پیدا کردن Directory Listingهای قابل مشاهده در نتایج
allintitle:cybersecurity attack

🔹 جستجوی چند کلمه به‌صورت همزمان در عنوان
allinurl:admin login

🔹 جستجوی چند کلمه در URL
allintext:security research

🔹 جستجوی چند کلمه در متن صفحات
security OR cybersecurity

🔹 نمایش نتایجی که یکی از دو عبارت را داشته باشند
cybersecurity -news

🔹 حذف نتایجی که شامل news هستند
"cybersecurity * challenges"

🔹 استفاده از * به‌عنوان Wildcard
cybersecurity AROUND(5) attack

🔹 پیدا کردن دو عبارت در فاصله نزدیک از هم
before:2020 cybersecurity

🔹 نتایج مربوط به قبل از سال ۲۰۲۰
after:2024 cybersecurity

🔹 نتایج مربوط به بعد از سال ۲۰۲۴
author:john_doe

🔹 جستجوی مطالب یک نویسنده مشخص
ext:pdf cybersecurity

🔹 جستجوی فایل با پسوند مشخص
related:example.com

🔹 پیدا کردن سایت‌های مرتبط
define:hacking

🔹 نمایش تعریف یک کلمه
info:example.com

🔹 دریافت اطلاعات مرتبط با یک سایت
inanchor:security

🔹 جستجو بر اساس متن لینک‌ها
news:cybersecurity

🔹 محدود کردن نتایج به اخبار
🧩 ترکیب چند Operator
قدرت اصلی Dorking زمانی مشخص میشه که چند Operator رو با هم ترکیب کنی:
site:example.com filetype:pdf cybersecurity

site:example.com inurl:login

site:example.com intitle:login

site:example.com intext:"security policy"

site:example.com filetype:docx OR filetype:pdf

site:example.com -www -shop filetype:pdf


⚠️ نکته مهم: Google Dorking خودش هک کردن نیست؛ در اصل یک تکنیک جستجوی پیشرفته برای پیدا کردن اطلاعاتی است که موتور جستجو ایندکس کرده. برای بررسی امنیتی، فقط روی سیستم‌ها و دامنه‌هایی استفاده کنید که اجازه بررسی آن‌ها را دارید.
📌 @ModernLan
❤5🙏2👏1
🐧 دستورات ضروری لینوکس | Linux Commands Cheat Sheet
❤4🔥3
شبکه به زبان ساده!
Photo
🌐 آدرس MAC در مقابل آدرس IP | تفاوتشون چیه
؟
خیلی‌ها MAC و IP رو با هم قاطی می‌کنن، ولی هرکدوم یه کار متفاوت دارن 👇
━━━━━━━━━━━━━━━━━━
🔹 MAC Address | آدرس MAC
AA:BB:CC:11:22:33

🔸 شناسه‌ی منحصربه‌فرد رابط شبکه‌ست

🔸 در سطح سخت‌افزار و کارت شبکه استفاده میشه

🔸 معمولاً به خود دستگاه یا رابط شبکه وابسته‌ست

🔸 بیشتر برای شناسایی دستگاه در شبکه محلی استفاده میشه
📌 ساده بخوای بدونی:
MAC = هویت دستگاه در شبکه محلی
━━━━━━━━━━━━━━━━━━
🔹 IP Address | آدرس IP
192.168.1.25

🔸 برای شناسایی دستگاه در یک شبکه استفاده میشه

🔸 برای برقراری ارتباط بین دستگاه‌ها کاربرد داره

🔸 می‌تونه با تغییر شبکه تغییر کنه

🔸 مشخص می‌کنه دستگاه در چه شبکه‌ای قرار داره
📌 ساده بخوای بدونی:
IP = آدرس دستگاه در شبکه
━━━━━━━━━━━━━━━━━━
یه مثال ساده:
فرض کن گوشی‌ وارد شبکه Wi-Fi خونه شده.
MAC → شناسه رابط شبکه گوشی
IP → آدرسی که گوشی داخل شبکه گرفته

یعنی MAC بیشتر میگه «این دستگاه کدومه؟»
و IP بیشتر برای اینه که بدونیم «این دستگاه توی کدوم شبکه و با چه آدرسی قابل دسترسیه؟»
━━━━━━━━━━━━━━━━━━
⚡ قانون طلایی:
MAC = هویت رابط شبکه
IP = آدرس شبکه


📌 یه دستگاه مثل ESP32 هم می‌تونه هم MAC Address داشته باشه و هم IP Address.
━━━━━━━━━━━━━━━━━━
🌐 @ModernLAN
🔹 شبکه | لینوکس | امنیت | آموزش
❤7