LinuxNetwork
1.48K subscribers
29 photos
5 videos
1 file
37 links
Download Telegram
LinuxNetwork
⭕️ اسکریپت جلوگیری از سوختن ترافیک Virtualizor پابلیک شد همون‌طور که میدونید یکی از مشکلات Virtualizor این هست که بصورت اجباری هرماه ترافیک رو میسوزونه این اسکریپت میتونه بصورت بازه زمانی دلخواه شما با cronjob ترافیک سرور های مجازی رو طوری محاسبه کنه که…
📥 0.3 Release:

Resolved an issue where the script only processed the first page of VPS results (50 entries). The script now:
Collects all pages (tries both 0- and 1-based page indices).
Normalizes pages where .vs is an array by converting array entries into an id‑keyed object (vpsid or vps_id).
Deterministically merges all page results and uses the merged JSON for listing and reset operations.
Fixes a glob/merge detection bug (replaced fragile quoted-glob/ls with nullglob+array) and corrected merge placement so merging runs after paging completes.
Adds diagnostic output files (/root/reset_band_merged_vs.json, candidate merges) and clearer logging to aid debugging.

Impact:
--list-vps now shows the full set of VPS IDs.
--check-vps and reset-all correctly find and operate on VPS IDs beyond the first 50 (e.g., VPS 393).
More robust against API responses that return .vs as arrays or objects.


🔗 https://github.com/LivingG0D/virtualizor-bwreset/releases/tag/0.3
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍1🔥1
⭕️ اختلال گسترده در Cloudflare و اختلال در دسترسی به ده‌ها سرویس محبوب

🔸 امروز سه‌شنبه ۱۸ نوامبر ۲۰۲۵ بروز یک اختلال سراسری در زیرساخت شرکت Cloudflare باعث از کار افتادن یا کندی جدی بسیاری از وب‌سایت‌ها و سرویس‌های پرمخاطب در جهان شد. به گزارش منابع خبری، خدماتی نظیر X، ChatGPT، Spotify، Shopify، Dropbox، Coinbase و تعدادی سرویس دیگر برای بخشی از کاربران با خطاهای سرور و مشکل در بارگذاری صفحات مواجه شدند.

⚠️ وبسایت Cloudflare اعلام کرده است منشأ این رویداد، مشکل داخلی در شبکه و ترافیک غیرمعمول بوده و عملیات بازیابی در حال انجام است، هرچند گزارش‌هایی از ادامه اختلال مقطعی همچنان منتشر می‌شود.

https://t.me/linuxnetch
Please open Telegram to view this post
VIEW IN TELEGRAM
👍31
👍 خداحافظی تدریجی با GIL در Python 3.14

تیم توسعهٔ Python اعلام کرده که از نسخهٔ ۳٫۱۴ حالت Free-Threaded به‌صورت رسمی پشتیبانی می‌شود؛ یعنی می‌توانید پایتون را با گزینهٔ --disable-gil کامپایل کنید و نسخه‌ای از CPython داشته باشید که بدون GIL کار می‌کند.
با این‌حال، در Python 3.14 بیلد پیش‌فرض هنوز GIL دارد و نسخهٔ بدون GIL به‌صورت یک بیلد جداگانه و اختیاری ارائه می‌شود، اما این‌بار به‌عنوان یک قابلیت رسمی و جدی برای پروژه‌های چندترد
---
🔵 اصلاً GIL چیست و چرا همه از آن شاکی بودند؟

GIL (Global Interpreter Lock) در پیاده‌سازی استاندارد Python (یعنی CPython) یک قفل سراسری است که اجازه می‌دهد در هر لحظه فقط یک ترد کد Python را اجرا کند، حتی اگر CPU شما چند هسته‌ای باشد.

به زبان ساده:

سیستم شما ممکن است ۸ یا ۱۶ هسته CPU داشته باشد،

شما چند تا thread در Python ایجاد می‌کنید،

اما به‌خاطر GIL، در هر لحظه فقط یک ترد می‌تواند واقعاً Python bytecode اجرا کند.


نتیجه:

برای کارهای I/O-bound (مثل درخواست شبکه، کار با فایل، DB و …) معمولاً مشکل خیلی شدید نیست، چون تردها بیشتر منتظر I/O هستند.

اما برای کارهای CPU-bound (محاسبات سنگین، پردازش تصویر، مدل‌های عددی و …)، GIL باعث می‌شود از ظرفیت واقعی چند هسته‌ای بودن CPU درست استفاده نشود و سرعت برنامه محدود شود.

---
💎 اپدیت Python 3.14 چه تغییری می‌کند؟

در نسخه‌های جدید، مخصوصاً از ۳٫۱۳ به بعد، یک بیلد جدید به نام free-threaded Python معرفی شده که در آن، GIL به‌طور کامل غیرفعال می‌شود. این حالت در Python 3.13 هنوز کاملاً آزمایشی بود، اما در Python 3.14:

بیلد بدون GIL به‌صورت رسمی‌تر و پایدارتر ارائه می‌شود.

همچنان اختیاری است و باید Python را با گزینه‌هایی مثل --disable-gil بسازید.

هستهٔ مفسر و مدیریت حافظه به‌گونه‌ای تغییر کرده که بدون GIL هم thread-safe باشند.

افت کارایی در حالت تک‌تردی نسبت به بیلد معمولی، با بهینه‌سازی‌ها در ۳٫۱۴ به حدود ۵ تا ۱۰٪ کاهش پیدا کرده است (در مقایسه با حدود ۴۰٪ در ۳٫۱۳).


این یعنی برای پروژه‌هایی که از چند ترد CPU-bound استفاده می‌کنند، Python 3.14 در حالت free-threaded می‌تواند اسکیل واقعی روی چند هسته را فراهم کند و در بسیاری از سناریوها چند برابر سریع‌تر از بیلد عادی با GIL عمل کند.


---

⚠️ چند نکتهٔ مهم برای دولوپرها

نسخهٔ بدون GIL هنوز برای همهٔ پروژه‌ها «plug-and-play» نیست؛ مخصوصاً اگر از C extensionها استفاده می‌کنید باید مطمئن شوید که آن‌ها با حالت Py_GIL_DISABLED سازگار و thread-safe کامپایل شده‌اند.

بعضی ابزارها و ویژگی‌های خیلی جدید (مثل JIT آزمایشی) ممکن است فعلاً با --disable-gil قابل ترکیب نباشند.

برای کدهایی که فقط تک‌ترد هستند و بیشتر I/O-bound کار می‌کنند، احتمالاً هنوز بیلد معمولی با GIL منطقی‌ترین گزینه است.

https://t.me/linuxnetch
Please open Telegram to view this post
VIEW IN TELEGRAM
👏21👍1
Forwarded from localhost (Yousef Taheri)
localhost
Photo
ـ 🗣️ Traceroute چطوری کار می‌کنه؟

ـ traceroute یه دستور خط فرمانه که بهت نشون می‌ده بسته‌های اینترنتی‌ات از چه مسیر و چه روترهایی رد می‌شن تا برسن به مقصد.

### ایده‌ی اصلی

این دستور چند تا بسته (probe) می‌فرسته سمت مقصد، ولی یه حقه‌ی خیلی ساده می‌زنه: روی هر بسته یه عددی به اسم TTL (Time To Live) می‌ذاره. این TTL یعنی «عمرِ بسته»؛ هر روتر که بسته ازش رد می‌شه، TTL رو یکی کم می‌کنه.

* اگه TTL قبل از رسیدن به مقصد بشه ۰، روتر بسته رو می‌اندازه دور
* همون روتر یه پیام برمی‌گردونه به فرستنده (کامپیوتر تو) به اسم ICMP Time Exceeded
* اینجوری IP و زمان رسیدن به اون روتر رو می‌فهمیم

Traceroute از همین رفتار طبیعی روترها سوءاستفاده‌ی مثبت می‌کنه تا مسیر رو مرحله‌به‌مرحله بکشه بیرون.

### مرحله‌به‌مرحله چی می‌شه؟

فرض کن می‌خوای بری از سیستم خودت به یه سرور توی اروپا:

1. اول TTL = 1

* کامپیوترت چند تا بسته (معمولاً UDP) با TTL=1 می‌فرسته.
* بسته می‌رسه به اولین روتر (همون مودم/روتر یا روتر ISP).
* روتر TTL رو یکی کم می‌کنه → می‌شه ۰ → بسته رو می‌اندازه دور.
* روتر یه پیام ICMP Time Exceeded برمی‌گردونه.
* traceroute از روی همین پیام، IP روتر اول و زمان رفت‌و‌برگشت (RTT) رو نشونت می‌ده. این می‌شه Hop 1.

2. بعد TTL = 2

* دوباره چند تا بسته می‌فرسته، این بار با TTL=2.
* بسته از روتر اول رد می‌شه (TTL می‌شه 1)، می‌رسه به روتر دوم.
* روتر دوم که TTL رو کم می‌کنه، می‌شه ۰، بسته رو می‌اندازه دور، ICMP Time Exceeded می‌فرسته.
* حالا traceroute می‌فهمه Hop 2 کجاست و چقدر طول کشیده.

3. همین‌طور TTL رو زیاد می‌کنه

* TTL می‌شه 3، 4، 5 و ...
* هر بار تا یه روتر جلوتر می‌ره، اونجا TTL تموم می‌شه، ICMP برمی‌گرده.
* تو خروجی traceroute می‌بینی: hop 3، hop 4، hop 5، با IP و زمان هر کدوم.

4. وقتی به مقصد می‌رسه چی؟

* مقصد معمولاً روی پورت‌های عجیب، لیسن نکرده.
* وقتی بسته به مقصد می‌رسه، به جای Time Exceeded، معمولاً یه پیام مثل ICMP Destination Unreachable (Port Unreachable) برمی‌گرده.
* traceroute از روی این می‌فهمه «آها، رسیدیم به مقصد» و دیگه TTL رو زیاد نمی‌کنه.

### چند تا مفهوم کلیدی

* TTL (Time To Live): عمر بسته توی شبکه. هر روتر یکی ازش کم می‌کنه. وقتی ۰ بشه، بسته حذف می‌شه.
* ICMP Time Exceeded: پیامی که روتر وقتی TTL تموم می‌شه برمی‌گردونه. همین پیام لو می‌ده روتر کیه.
* Probe: همون بسته‌های تستی که traceroute می‌فرسته. معمولاً سه‌تا برای هر hop می‌فرسته تا زمان‌ها رو دقیق‌تر بسنجه.
* RTT (Round Trip Time): زمانی که طول می‌کشه بسته بره تا روتر و جواب برگرده.

### روی لینوکس، مک و ویندوز چه فرقی داره؟

* روی Linux/macOS معمولاً دستور traceroute هست.

* به صورت پیش‌فرض از UDP روی پورت‌های
بالا و عجیب استفاده می‌کنه.
* می‌تونی با سوئیچ‌ها روش رو عوض کنی:

* -4 فقط IPv4
* -6 فقط IPv6
* بعضی سوئیچ‌ها هستن که می‌ذارن از TCP یا ICMP استفاده کنه.

* روی Windows اسم دستور شده tracert.

* به جای UDP، معمولاً از ICMP Echo Request (مثل ping) استفاده می‌کنه.
* سوئیچ‌های معمول:

* -4 و -6 برای انتخاب IPv4/IPv6
* می‌تونی تنظیم کنی چند تا hop بیشتر یا کمتر بره.

### چرا بعضی hopها با ستاره (*) نشون داده می‌شن؟

گاهی تو خروجی traceroute می‌بینی یه ستون یا چند تا از probeها فقط * هستن:

* یا روتر جواب ICMP نمی‌ده (فایروال، تنظیمات امنیتی، …)
* یا بسته‌ها تو راه گم شدن و جواب به موقع نرسیده.

این لزوماً به معنی خرابی کامل نیست؛ فقط یعنی ما جواب نگرفتیم.

### جمع‌بندی

Traceroute در اصل داره با TTL بازی می‌کنه:

1. TTL کم می‌ذاره تا بسته وسط راه بمیره و روتر مجبور بشه خودش رو لو بده.
2. هر بار TTL رو یکی زیاد می‌کنه، تا hop بعدی کشف بشه.
3. وقتی به مقصد رسید و پیام «به مقصد نرسید / پورت بسته است» برگشت، می‌فهمه که مسیر کامل شده.

خروجی‌ای که می‌بینی، لیست روترها از سیستم خودت تا سرور مقصد است، همراه با تاخیر هر کدوم؛ این برای دیباگ شبکه، پیدا کردن جای قطعی، یا دیدن مسیر ترافیکت خیلی به درد می‌خوره.


https://t.me/linuxnetch
Please open Telegram to view this post
VIEW IN TELEGRAM
7👍2
⚡️ بهینه سازی خودکار MTU برای سرور های اوبونتو فقط با یک کامند :

curl -sSL https://raw.githubusercontent.com/LivingG0D/mtu_optimizer/main/mtu_optimizer.sh | sudo bash



📱 https://github.com/LivingG0D/mtu_optimizer
Please open Telegram to view this post
VIEW IN TELEGRAM
6👍2
Forwarded from NetBlocks
⚠️ Update: Metrics show a very slight rise in internet connectivity in #Iran this morning after the 200 hour mark. However, overall connectivity remains at ~2% of ordinary levels and there is no indication of a significant return.
1
🔴 ۶۴ میلیون دلار در روز!

این فقط یک عدد نیست؛ هزینه‌ی وحشتناکی است که برای "قطع ارتباط مردم با جهان" و "سانسور واقعیت" از جیب ما می‌رود.

طبق آمار نت‌بلاکس، خسارت قطع اینترنت معادل ۱۰ هزار میلیارد تومان در هر ۲۴ ساعت است.

آیا پنهان کردن آنچه در
بطن جامعه می‌گذرد، ارزش نابودی اقتصاد کشور با این سرعت سرسام‌آور را دارد؟

هزینه این "ترس از شفافیت" را باید مسببان آن بدهند، نه مردم.

https://t.me/linuxnetch
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍2👏1
Forwarded from NetBlocks
⚠️ Confirmed: Network data show #Iran is now in the midst of a near-total internet blackout with national connectivity at 4% or ordinary levels. The incident comes amid US and Israeli combat operations and matches measures used during last year's war with Israel.
Forwarded from localhost (Yousef Taheri)
شرایط اینترنت نسبت به ساعات قبل افتضاح تر شده.
در بعضی از شهر ها گزارشی مبنی بر عدم امکان ارسال پیام ثبت شده.
پلتفرم های مورد تأیید اینترنت ملی جمهوری اسلامی نیز با اختلال شدید مواجه هستن.

حکومت بدترین و شدیدترین محدودیت رو اعمال کرده و خب متأسفانه میتونه خیلی بدتر و یا مشابه اعتراضات دیماه خونین ۴۰۴ هم عمل کنه.
⚠️ نت بلاکس: داده‌ها نشان می‌دهند که #ایران با گذشت بیش از ۸۴ ساعت از قطعی اینترنتِ تحمیل‌شده توسط رژیم، همچنان آفلاین است.
دسترسی به اینترنت آزاد در زمان بحران یک شریان حیاتی است و این قطعی، نشان‌دهنده بی‌توجهی به حق مردم برای مطلع ماندن و مشارکت در آینده کشورشان است.

@linuxnetch
Please open Telegram to view this post
VIEW IN TELEGRAM
👍41
Forwarded from NetBlocks
⚠️ Update: #Iran's internet blackout is entering its twelfth day after 264 hours with connectivity still at 1% of ordinary levels.

Meanwhile, the regime's spokesperson has confirmed observations pointing to a whitelisting system, stating that only the approved are given a voice.
2👍1
Forwarded from NetBlocks
⚠️ Update: #Iran's internet blackout has entered its 25th day after 576 hours, leaving the public isolated from the world as whitelisted accounts seek to take control of the narrative. The measure leaves civilians without vital updates and without a voice on the global stage.
Forwarded from NetBlocks
😶 Metrics show that #Iran's internet blackout is ongoing into its 79th day in its twelfth week. The mass-censorship measure has reshaped the nature of civic participation with information controls being used to relegate the general public to mere observers in their own country.
Beginning tonight "سحاب" will learn to fear the color GOLD 🤝

🔥🔥🔥🔥🔥🔥🔥🔥

🗿 https://github.com/LivingG0D/Golden-GRE
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
10
🤖 Solid-LM — Native macOS app

برای اجرای مدل‌های هوش مصنوعی: چت، تولید تصویر و تبدیل متن به گفتار — همه روی خودِ دستگاه.

💬 چت با رندر نیتیو Markdown، هایلایت کد و نمایش tok/s هر پاسخ

🧠 سه موتور: llama.cpp، MLX و vLLM

🚀 امکان Speculative Decoding خودکار — ۱.۸ برابر سریع‌تر (۱۴.۱ → ۲۵.۵ tok/s)

🎨 ساخت و ویرایش تصویر + بزرگ‌نمایی ۴ برابری روی Metal

📢 گفتار به صدا یا Kokoro-82M (۵۴ صدا)

📥 دانلود سریع مدل از HuggingFace با لینک

۲.۳ مگابایت • متن‌باز MIT • فقط Apple Silicon

🔗 github.com/LivingG0D/Solid-LM
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍1👏1