malkemit / namizun

Asymmetric upload and download
https://t.me/ExplainLikeIam5
613 stars 99 forks source link

سختگیری های جدید - بر اساس سرعت #40

Closed upgo7502 closed 1 year ago

upgo7502 commented 1 year ago

با سلام و درود بر شما

مدتیه که Provider ها میگن اگر شما دارید 100 مگابیت در ثانیه دانلود میکنید باید 800 مگابیت ارسال داشته باشید . دیگه بر اساس ترافیک محاسبه نمیکنن . و از همه بدتر میگن ترافیک UDP اصلا قبول نیست .

سختگیری بیشتر شده

ممنون میشم اینم اگر راهکاری داره براش پیاده سازی بشه .

سپاس

mohsensaremi commented 1 year ago

منم این آپشنو نیاز دارم لطفا راهکاری براش ارايه بدید. ممنون.

Jolge100 commented 1 year ago

با سلام و درود بر شما

مدتیه که Provider ها میگن اگر شما دارید 100 مگابیت در ثانیه دانلود میکنید باید 800 مگابیت ارسال داشته باشید . دیگه بر اساس ترافیک محاسبه نمیکنن . و از همه بدتر میگن ترافیک UDP اصلا قبول نیست .

سختگیری بیشتر شده

ممنون میشم اینم اگر راهکاری داره براش پیاده سازی بشه .

سپاس

کدوم دیتاسنتر هستین ؟

upgo7502 commented 1 year ago

با سلام و درود بر شما مدتیه که Provider ها میگن اگر شما دارید 100 مگابیت در ثانیه دانلود میکنید باید 800 مگابیت ارسال داشته باشید . دیگه بر اساس ترافیک محاسبه نمیکنن . و از همه بدتر میگن ترافیک UDP اصلا قبول نیست . سختگیری بیشتر شده ممنون میشم اینم اگر راهکاری داره براش پیاده سازی بشه . سپاس

کدوم دیتاسنتر هستین ؟

آسیاتک - صفرو یک - لایزر - افرانت - فرهنگ آزما و چند دیتاسنتر دیگه

malkemit commented 1 year ago

سلام مشکل سرعت رو تقریبا حل کردم و اپدیت میدم

ولی از بابت udp، اگر قرار باشه tcp داشته باشیم باید یه ساختار های دیگه ایی رو در نظر بگیریم که شامل اپلود کردن به سرور خارج (شاید با واسطه قرار دادن کلادفلر) میشه

این موضوع اوکی هست؟

karimi12 commented 1 year ago

چه جوری UDP تشخیص می دن!!؟!؟

upgo7502 commented 1 year ago

چه جوری UDP تشخیص می دن!!؟!؟

جدیدا خیلی چک میکنن اگر packet udp زیاد با سرعت بیشتر از 1Mpbs ارسال بشه اخطار قطع سرویس میدن . میگن باید TCP باشه . معنایی نداره این همه پکت UDP با این سرعت به مقصد های مختلف ارسال میکنید .

حتی جریمه های سنگین هم برای مشتری در نظر میگیرم و فاکتور های سنگیی صادر میکنن که اکثر این فاکتور ها حقوقی میشه .

malkemit commented 1 year ago

ایده ایی که دارم اینه که

یک اسکریپت دریافت کننده اضافه کنم که رو سرور های خارجی نصب بشه

بعد دامنه ایی بگیرین و توی کلادفلر ثبت بکنین که به ای پی سرور خارج اشاره بکنه ( به خاطر اینکه ای پی بن بشه و محدودیت سرعت ها کمی کمتر باشه )

و نامیزون اینجوری اپلود بکنه و اسکریپت جدید هم فایل ها رو ذخیره نکنه

حتی میشه چند دامنه ایی کرد و هر دامنه فرضا رو یک cdn باشه ( اینجوری سرور شما فقط به یک سرور خارجی مستقیم وصل نیست و هر بار به ای پی خاصی معمولا وصل میشه)

ایده ایی ندارم که چقدر میشه ترافیک اینجوری مصرف کرد ولی اگر بخوایم ترافیک روی tcp داشته باشیم بهترین کار همینه

upgo7502 commented 1 year ago

ایده ایی که دارم اینه که

یک اسکریپت دریافت کننده اضافه کنم که رو سرور های خارجی نصب بشه

بعد دامنه ایی بگیرین و توی کلادفلر ثبت بکنین که به ای پی سرور خارج اشاره بکنه ( به خاطر اینکه ای پی بن بشه و محدودیت سرعت ها کمی کمتر باشه )

و نامیزون اینجوری اپلود بکنه و اسکریپت جدید هم فایل ها رو ذخیره نکنه

حتی میشه چند دامنه ایی کرد و هر دامنه فرضا رو یک cdn باشه ( اینجوری سرور شما فقط به یک سرور خارجی مستقیم وصل نیست و هر بار به ای پی خاصی معمولا وصل میشه)

ایده ایی ندارم که چقدر میشه ترافیک اینجوری مصرف کرد ولی اگر بخوایم ترافیک روی tcp داشته باشیم بهترین کار همینه

1 . من یه راهکاری دارم . لینوکسیه . ولی باید private بهت بگم . 2 . ترافیکخارج براشون نمیصرفه و باید روی شبکه IXP باشه والا بدتر .. باز سرویس رو میبندن .

malkemit commented 1 year ago

بهم ایمیل بزن khodemalkemit@gmail.com

upgo7502 commented 1 year ago

بهم ایمیل بزن khodemalkemit@gmail.com

مرسی . ارسال کردم

NabiKAZ commented 1 year ago

چرا لقمه رو میپیچونید. این همه آپلودسنتر داخلی و خارجی رایگان هست. یه فهرست از همه درست میکنید و آپلود واقعی که TCP هم هست انجام بشه.

picofile, mediafire, google drive, dropbox, box,... یه free upload center سرچ کردم ۱.۵ میلیارد صفحه آورد ;-)

فقط از نظر کدنویسی باید یه اینترفیس واحد برای آپلود نوشته بشه و فیلدها و آدرس‌های هر سایت استخراج بشه و به شکل پلاگین در بیاد و از اون اینترفیس ایمپلمت بشه.

مشابه این قبلاً توی پروژه rapidleech انجام شده: https://github.com/Th3-822/rapidleech هم دانلود و هم آپلود بسیاری از سایت‌ها رو انجام داده که میشه از الگوهاش استفاده کرد، مثل اینجا: https://github.com/Th3-822/rapidleech/tree/master/hosts/upload که الگوی بیش از ۲۰۰ تا سایت رو درآورده، اگرچه خیلی قدیمین و نیاز به آپدیت دارن. حتی بعضی این سایتها کپچا دارند و این چیزا هم براش راه حل داشت و تو سطح پیشرفته میشه اون هم دور زد که اگر لازم شد دراون مورد هم میتونم صحبت کنم.

پ.ن: در ضمن udp هم بیشتر برای openvpn شاید استفاده میکنید، خب اغلب پروتوکل‌های v2ray روی tcp هستند و اصلاً نباید مشکلی داشته باشه.

malkemit commented 1 year ago

@NabiKAZ

اون وقت تست کردی که چه حجم و چه سرعتی رو میتونی داشته باشی؟ اپلودسنترها محدودیت حجمی در هر ریکوئست ارسالی و هم محدودیت ارسال روزانه دارند. مگر اینکه لاگین کرد و از داخل پنل کار رو پیش برد که دردسر های خودشو داره

خوشحال میشم روش های دور زدن کپچا ها رو اعلام کنی، استفاده بکنیم

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

jenaze commented 1 year ago

@malkemit FTP is a TCP based service exclusively. میخواستم بگم اگر امکانش هست یک تنظیم دیگه قرار بده که تنظیمات ftp از خود کاربر بگیره و تو هاست آپلود کنه من خودم ی فایل نوشتم که بهش ftp میدی و کرون جاب میزاری هی فایل میسازه و آپلود میکنه 

آپلود سنتر هم

FTP server: ftp.rapidgator.net Login: yourmail@mail.com Password: 12345678

حتی با ftp فایل رو پاک میشه که هاست پر نشه

NabiKAZ commented 1 year ago

@malkemit

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

البته راه دیگشم که این محدودیت‌ها رو نداره خودتون اشاره کردید که بد هم نیست اینکه یه بخش مکمل به همین اسکریپت اضافه بشه(لزومی نداره یه اسکریپت و پروژه مستقل باشه و همین اسکریت میتونه دو منظوره باشه و یه منو مخصوص اینکار اضافه بشه) حالا هرکی چه به هدف نامیزون چه به هدف مشارکت در عملیات آپلود یا هر دو هدف، همین اسکریپت رو نصب میکنه و میتونه تا سقف مشخصی رو مشارکتی برای آپلود تخصیص بده(که البته روی سرورشون دانلود صورت میگیره) عموماً چون سرورهای خارج ترافیک نامحدود دارند شخص میتونه با هدف مشارکتی با تعیین سقف مشخص اون رو روی سرور خارجش هم نصب کنه. آی‌پی سرور هم به یه جای مرکزی گزارش و در دیتابیسی ذخیره بشه(یا غیرمتمرکز باشن و مرتب باهم سینک بشن). بعد کسایی که نیاز دارن از اون منبع آدرس‌ها رو دریافت میکنند و آپلود فیک TCP بهش میفرستن تو مقصدم که فایل ذخیره نمیشه. (به اشتراک گذاری آدرس سرورهاش یه چیزی شبیه به عملکرد پروکسی تلگرام یا فیلترشکن تور)

البته این قانون UDP خیلی سخت‌گیرانس و بعید میدونم خیلی روش تاکید بشه و تا تشدید نشده ارزش وقت گذاشتن نداره.

برای کپچا هم هر جا لازم شد اگر ساده باشه با tesseract-ocr ماشینی و سریع میتونه انجام بشه و برای کپچاهای پیچیده یا ریکپچا گوگل پیشنهاد من سرویس سایت 2captcha هست که api هم داره. هزینه زیادی نداره و کمتر از 1 دلار برای 1000 تا کپچاست که هر کسی خواست تهیه میکنه و api keyش رو وارد برنامه میکنه. که چون یه سری ورکر انسانی داره که پاداش میگیرن، محدودیتی برای نوع کپچا نداره و هر چیزی رو حل میکنند. کسیم دوس داشت میتونه ورکر بشه و در ازاش پول بگیره برای خرج کردن تو سایت و درخواست‌های حل کپچاهای خودش یا حتی برداشت و اون 1 دلار هم دیگه نیاز نیست برای خرید اعتبار بده. این یه توضیح کلی بود درمورد کپچا.

malkemit commented 1 year ago

سلام ممنون از نظرت @jenaze

ولی مشکلی که هست ftp از پورت ۲۱ برای ارسال استفاده میکنه و به این صورت لیست میشه و بهتون گیر میدن. قبل از اینکه این روش رو بزنم سر همین با ftp مشکل خوردم

الان بیشتر مشکلم سر کنترل سرعت ارساله حالا به هر روشی باشه میخوام سرعت ارسال رو کنترل کنم و دارم لایبری های مربوط به این رو چک میکنم

malkemit commented 1 year ago

@NabiKAZ من راستش دنبال اینم که تا جای ممکنه از سرویس های دیگه سو استفاده نشه و به طبع سراغ اپلودسنتر ها نمیرم فعلا یه اسکریپت کمکی رو اماده کردم که رو سرور های خارجی ریخته میشه و میتونه شنونده اپلود باشه و سیو نکنه و شما میتونین ای پی رو پشت cdn نگه دارین ( به هر حال ای پی فیلترشده ایی تو دست بال همه هست! و میشه ازش برای این کار استفاده بشه)

یکم سرم خلوت بشه این کار ها رو اضافه میکنم

NabiKAZ commented 1 year ago

فقط به نظرم اسکریپت جدا نباشه و توی دل همین پروزه باشه بهتره و یه گزینه باشه که مثلاً مد اون تغییر کنه یا گزینه مشارکت آپلود یه آپشن باشه که روشن خاموش بشه... اینجوری تجمیع‌تره پروژه.

malkemit commented 1 year ago

کنترل و ارسال تو همین پروژه نامیزون میزارم باشه

ولی اون سمت هم باید چیزی باشه که این ترافیک رو بگیره ولی فایل رو ذخیره نکنه دیگه ( میخوام واقعا اپلود بشه)

توضیح میدمش قطعا

jenaze commented 1 year ago

@malkemit میشه یک ftp سرور سمت یک سرویس دیگه درست کنیم و ارسال کنیم با یک پورت دیگه

karimi12 commented 1 year ago

کنترل و ارسال تو همین پروژه نامیزون میزارم باشه

ولی اون سمت هم باید چیزی باشه که این ترافیک رو بگیره ولی فایل رو ذخیره نکنه دیگه ( میخوام واقعا اپلود بشه)

توضیح میدمش قطعا

یه اسکریت آپلودر و دانلودر باشهبرای شروع خیلی خوب بعدش کم کم می شه بقیه موارد اضافه کرد فقط برای سادگی به نظرم خوب پروژه داکرایز بشه تا کار باهاش راحتر بشه

malkemit commented 1 year ago

@karimi12

پروژه مربوط به دریافت فایل رو نوشتم و احتمالا داکرایز کنم و تو داکر هاب قرار بدم که برای نصب فقط یک دستور بزنین

kiavash599 commented 1 year ago

اگر اپلود روی یه سرور مشخص حتی روی tcp انجام بشه معلوم نیست فردا بگم معنی نداره اینهمه روی tcp در روز به یه نود مشخص اپلود داشته باشی. از این بازیا در میارن بهترین روش این دقیقا وب سرفینگ رو شبیه سازی کنیم. یکی از اینکارا میتونه داشتن دیتابیسی از چند سرور مشخص باشه که هر سرور روی پورت مشخص خودش لیسن داره و این نیاز یه جور اتحادیه داره و اتحاد وجود داره. کاری شبیه تورنتها منتها فقط دریافت پاکتها فیک. ۱- دیتابیسی که از سرورهایی که میخوان در این پروژه شرکت کنن ۲- کسانی که میخوان در این پروژه شرکت کنن اسکریپتی اجرا کنن که روی پورت خاص پاکتهای tcp دریافت کنن ۳- ارسال تصادفی روزانه در ساعتهای مختلق طبق یک الگوی تصادفی پاکتها از پورت ۸۰ یا ۴۴۳ به این سرورها. پیاده سازی اینکار کمی ساخته و به چند نفر نیاز داره ولی کار تشخیص رو بشدت سخت میکنه

هر چقدر تعداد افراد داوطلب بیشتر بشه این شبیه سازی به واقعیت نزدیکتر میشه

Jolge100 commented 1 year ago

این خیلی ایده خوبی هستش خودم مثلا می تونم 7-8 تا سرور خودم رو اضافه کنم بقیه هم اضافه کنن قشنگ 200-300 تا می شه

alireza95jalili commented 1 year ago

من معتقدم صحبت کردن در اینجا بزگترین اشتباهیه که داریم مرتکب میشیم. اینا عقل ندارن. اگر راهکاری ارائه بدیم عمرا متوجه نمیشن. اما بی نهایت فوضولن. اگر من هر روز این ایشو رو چک میکنم اونا هم میکنن و وقتی بفهمن به چه سلوشنی رسیدیم قطعا براش حرکتی میزنن.

NabiKAZ commented 1 year ago

@karimi12

پروژه مربوط به دریافت فایل رو نوشتم و احتمالا داکرایز کنم و تو داکر هاب قرار بدم که برای نصب فقط یک دستور بزنین

دستت درد نکنه ولی چرا من از داکر بدم میاد D: بی زحمت عادی هم بشه باش کار کرد (:

malkemit commented 1 year ago

@kiavash599 @Jolge100

فعلا در قدم اول ترجیح میدم که ای پی های مقصد رو پشت cdn قرار بدم. اینجوری یک سرور میتونه پشت چند دامنه قرار بگیره

سعی میکنم حجم فایل های ارسال رو کم قرار بدم که پشت cdn های بیشتری قرار بگیره

در مورد همکاری جمعی، بهتره فعلا واردش نشیم. فعلا ترجیح میدم که هرکس دامین های خودشو انتخاب کنه اما برای ارسال از obfs استفاده بشه که دامنه سخت تر تشخیص داده بشه

malkemit commented 1 year ago

@alireza95jalili

حق با شماست ولی یک جامعه تمیز در هیچ جا نمیشه داشت و در همه جا ادم فضول هست. برای همین بهتره ذهنمونو سر این موارد خراب نکنیم

malkemit commented 1 year ago

@NabiKAZ مثل نامیزون پروژه رو نصب دستی میزارم قطعا ولی از یه طرف ایمیجشو میزارم داکر هاب و هرکس هرجور دوست داشت استفاده کنه

SSgumS commented 1 year ago

این بحث ترافیک‌های UDP رو توی همهٔ شرایط گیر می‌دن یا اگر ترافیک خیلی بالا بره؟مثلا روی ترافیک در حد ماهی ۵۰ ترابایت هم این قضیه صدق می‌کنه؟

malkemit commented 1 year ago

به نظرم ترافیک زیاد باشه عجیب میشه و گیر میدن

حتی اگر به udp گیر ندن به این گیر میدن که چرا یه سرور ۲۰ گیگی ماهی ۲۰ ترا اپلود داره و مستندات میخوان

smaznet commented 1 year ago

سلام به همگی برای آپلود tcp یه پیشنهاد دارم

سرورهای اسپید تست کاملا رایگان و دردسترس هستن

با استفاده از https://www.speedtest.net/api/js/servers?engine=js&limit=10&https_functional=true میشه لیست سرورهاشون رو گرفت لیست کاملشون هم اینجا هست https://williamyaps.github.io/wlmjavascript/servercli.html

این میاد یه آدرس بهمون میده برای آپلود که اینطوریه به طور مثال و میتونیم داخلش اپلود کنیم

http://speedtest.glasnet.nl:8080/speedtest/upload.php

hosseingh1993 commented 1 year ago

این مشکل ترافیک tcp حل شده در آپدیت ها؟

upgo7502 commented 1 year ago

متاسفانه جدیدا بشدت مانیتور میشه که اگر آپلود فیک داشته باشیم سریعا روی 20 مگابیت محدود میکنن . مثلا هاست ایران - لایزر - آسیاتک - افرانت . تبیان - ایرانسرور

malkemit commented 1 year ago

سلام به همگی

تو این مدت دو سه سناریو تست کردم ولی چیز پایداری نبودند

کلا اپلود فیک رو میزارم کنار

توی دو فاز کار رو جلو میبرم فاز اول سرور های خارجی از سرور های ایرانی دانلود کنند، اما به صورت شبکه ایی

فاز دوم سعی میکنم این شبکه رو یک اپلودسنتر بکنم که فایل ها واقعی باشه وکاربر های دیگه هم دانلود کنند

mehdixterra commented 1 year ago

سلام به همگی، من روی دیتا سنتر آریانت چک کردم ،هم آپلود فیک رو داره محاسبه میکنه و هم دانلود واقعی رو، توی پنل کاربری سرور ترافیک مصرفی جمع آپلود فیک و دانلودمه

arashammm commented 1 year ago

الان در حال حاضر همچنان همون آپلود بر روی UDP هست؟ اگر هست که فعلا استفاده ای نداره اسکریپت درست میگم؟

iBunta commented 1 year ago

سلام به همگی

تو این مدت دو سه سناریو تست کردم ولی چیز پایداری نبودند

کلا اپلود فیک رو میزارم کنار

توی دو فاز کار رو جلو میبرم فاز اول سرور های خارجی از سرور های ایرانی دانلود کنند، اما به صورت شبکه ایی

فاز دوم سعی میکنم این شبکه رو یک اپلودسنتر بکنم که فایل ها واقعی باشه وکاربر های دیگه هم دانلود کنند

ولی به نظرم این اسکریپت رو نگه دارید به کار‌ میاد میزان مصرف کم باشه واقعا کار راه بندازه و‌گیر نمیدن واسه استفاده شخصی روی VM عالیه! صرفا به درد VPN فروشا نمیخوره

SSgumS commented 1 year ago

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

ولی به نظرم این اسکریپت رو نگه دارید به کار‌ میاد میزان مصرف کم باشه واقعا کار راه بندازه و‌گیر نمیدن واسه استفاده شخصی روی VM عالیه! صرفا به درد VPN فروشا نمیخوره

برادر این مصرف کمی که میگی توی چه اوردره؟ طبق تجربه‌ت تا چقدر رو نفهمیدن؟

iBunta commented 1 year ago

سلام به همگی

تو این مدت دو سه سناریو تست کردم ولی چیز پایداری نبودند

کلا اپلود فیک رو میزارم کنار

توی دو فاز کار رو جلو میبرم فاز اول سرور های خارجی از سرور های ایرانی دانلود کنند، اما به صورت شبکه ایی

فاز دوم سعی میکنم این شبکه رو یک اپلودسنتر بکنم که فایل ها واقعی باشه وکاربر های دیگه هم دانلود کنند

ولی به نظرم این اسکریپت رو نگه دارید به کار‌ میاد میزان مصرف کم باشه واقعا کار راه بندازه و‌گیر نمیدن واسه استفاده شخصی روی VM عالیه! صرفا به درد VPN فروشا نمیخوره

برادر این مصرف کمی که میگی توی چه اوردره؟ طبق تجربه‌ت تا چقدر رو نفهمیدن؟

مصرفم نسبتا کمه! بین ۴۰۰ الی ۶۰۰ گیگ ماهیانه دانلود دارم و با نسبت ۱ب۸ الان ۳ماهی هست گیر ندادن با همین اسکریپت. حس میکنم از ۵ ترا مجموعا نباید بزنی بالا! البته بعضی Provider ها دارن VM حجمی میدن به قیمت خون پدراشون ولی با ترافیک ۱:۱ مشکلی ندارن

astromasoud commented 1 year ago

you're welcome https://github.com/astromasoud/UploaderScript

alirezakay commented 1 year ago

you're welcome https://github.com/astromasoud/UploaderScript

سلام. این از tcp استفاده میکنه؟

astromasoud commented 1 year ago

you're welcome https://github.com/astromasoud/UploaderScript

سلام. این از tcp استفاده میکنه؟

بله ولی نیازمند تعریف یک سرور مقصد SSH یا SFTP هست که میتونه برای خودتون یا یک سرور پابلیک باشه.

malkemit commented 1 year ago

با سلام خدمت همگی جواب چند سوال: ۱) ایا بیخیال شدین؟‌خیر، این مدت یه سبکی رو میخواستم پیش ببرم که نتیجه خوبی نداشت (روش cdn) ۲) راهکار جدید؟ تبادل ترافیک tcp به صورت شبکه ایی. هر نوع ترافیک فیک چون رفتار برادکست داره باعث میشه سرور شما محدود بشه ( برادکست یعنی خود به خود ترافیک به سمت ای پی هایی بفرسته ولی اصلا ریکوئستی سمتش نیومده) ۳) کی میاد؟ ساختار جدید نیازمند به ۳ تا پروژه هست که به صورت همزمان کار بکنه و منم یک نفرم! نسخه های اولیه چیزی بشه تو کانال بهتون اطلاع میدم ۴) چرا طول میدی؟ متاسفانه چون در تایم های ازاد رو پروژه کار میکنم از لحاظ زمانی محدودم، مرسی که درک میکنید

با تشکر ملکمیت