প্রকল্প সম্পর্কে

# IPv6 Web Resource Checker (webres6) ওয়েব পেজ বা অ্যাপ্লিকেশনের IPv6-only প্রস্তুতি পরীক্ষা করার জন্য একটি কমান্ড-লাইন টুল এবং ওয়েব সার্ভিস। এটি Selenium ব্যবহার করে একটি ওয়েবসাইট লোড করে, performance log থেকে হোস্ট নেম এবং IP অ্যাড্রেস বের করে এবং প্রতিটি রিসোর্স IPv6-only নেটওয়ার্কে অ্যাক্সেসযোগ্য কিনা তা নির্ধারণ করে। ## বৈশিষ্ট্য - Selenium (Chromium) ব্যবহার করে ওয়েব পেজ ক্রল করে এবং performance log থেকে সমস্ত হোস্টনেম ও IP অ্যাড্রেস বের করে - নেটিভ IPv6 অ্যাড্রেস ব্যবহারের ভিত্তিতে রিসোর্সকে IPv6-ready হিসেবে শ্রেণীবদ্ধ করে - কাস্টম Unbound-ভিত্তিক রিজলভার (dnsprobe) ব্যবহার করে IPv6-only DNS রেজোলিউশন পরীক্ষা করে - ইনফ্রাস্ট্রাকচার বিশ্লেষণের জন্য প্রাপ্ত IP অ্যাড্রেসে WHOIS লুকআপ করে - IPv6-only প্রস্তুতির স্কোর গণনা করে এবং একটি ফলাফল স্কোরবোর্ড সংরক্ষণ করে - কাস্টম Selenium/Python instrumentation কোড সমর্থন করে - API সার্ভার সাইডে NAT64 ট্রান্সলেশন পরিচালনা করে - REST API-এর মাধ্যমে JSON হিসেবে স্ট্রাকচার্ড রিপোর্ট এক্সপোর্ট করে - Valkey বা ফ্ল্যাট ফাইলে ফলাফল ক্যাশ ও আর্কাইভ করে - পাবলিক সাফিক্স লিস্ট ব্যবহার করে ডোমেইন নাম বিভক্ত করে ## উপাদানসমূহ - **API Server** (`webres6-api`) — Selenium, dnsprobe এবং REST এন্ডপয়েন্ট সহ Flask-ভিত্তিক সার্ভার - **CLI Client** — API কোয়েরি করে এবং ফলাফল প্রদর্শন করে এমন Python কমান্ড-লাইন টুল - **Web App** — API দ্বারা পরিবেশিত বা স্ট্যান্ডঅ্যালোন ভিউয়ার হিসেবে jQuery-ভিত্তিক ফ্রন্টএন্ড - **MCP Server** — AI অ্যাসিস্ট্যান্টের জন্য Model Context Protocol ইন্টিগ্রেশন ## সেটআপ ### প্রয়োজনীয়তা - API সার্ভারের জন্য Python 3.14+ - CLI ক্লায়েন্টের জন্য Python 3.11+ - Selenium-এর জন্য NAT64 সমর্থন সহ dual-stack বা IPv6-only হোস্ট - DNS প্রোবিংয়ের জন্য Python বাইন্ডিং সহ libunbound ### ইনস্টলেশন uv-এর মাধ্যমে CLI: ``` uv tool install --from 'git+https://github.com/SAP/webres6#subdirectory=cli' webres6-cli ``` Docker Compose সেটআপ API, NGINX এবং Selenium কন্টেইনার বিল্ড করে। `helm/` ডিরেক্টরিতে Helm chart-এর মাধ্যমে Kubernetes ডিপ্লয়মেন্ট উপলব্ধ। ## ব্যবহার ### CLI ``` webres6 [options] URL ``` অপশনগুলির মধ্যে রয়েছে স্ক্রিনশট ক্যাপচার, JSON এক্সপোর্ট, টাইমআউট নিয়ন্ত্রণ, ASN প্রদর্শন এবং সার্ভারে স্কোর জমা দেওয়া। ### Web App ইনপুট ফিল্ডে একটি URL লিখুন এবং **Analyze** ক্লিক করুন। নিচে ফলাফল এবং সাম্প্রতিক স্কোরবোর্ড প্রদর্শিত হবে। কাস্টম CSS এবং সংরক্ষিত রিপোর্ট ফাইল ব্রাউজার উইন্ডোতে ড্রপ করে রেন্ডার করা যায়। ### ডেমো একটি পাবলিক ইনস্ট্যান্স [webres6.dev.sap](https://webres6.dev.sap)-এ উপলব্ধ। ## সীমাবদ্ধতা - Selenium চালানো হোস্টে dual-stack কানেক্টিভিটি প্রয়োজন (অথবা NAT64 সহ IPv6-only) - IPv4-only হোস্ট সমস্ত রিসোর্স অনুপলব্ধ হিসেবে রিপোর্ট করবে - ধীরগতির IPv6 হোস্টের জন্য Chromium-এর Happy Eyeballs IPv4 পছন্দ করতে পারে - কোনো authentication, cookie consent হ্যান্ডলিং বা JavaScript delay সমর্থন নেই (কাস্টম instrumentation-এর মাধ্যমে বাড়ানো যায়) - বট ট্রাফিক গোপন করে না ## লাইসেন্সিং Copyright 2025 SAP SE বা একটি SAP affiliate company। Apache License 2.0-এর অধীনে লাইসেন্সকৃত। বিস্তারিত জানতে [LICENSE](LICENSE) এবং [REUSE](https://api.reuse.software/info/github.com/SAP/webres6) দেখুন।