A comprehensive, high-performance tool for testing BDIX (Bangladesh Internet Exchange) network connectivity. This tool helps you discover and test available local servers, FTP sites, streaming services, and other resources within the BDIX network ecosystem.
- ๐ Lightning Fast Testing: Quick ping tests with 2-second timeout for rapid connectivity checks
- ๐ Advanced Analytics: Detailed ping analysis with comprehensive statistics and network metrics
- ๐ Smart Discovery: Intelligent filtering to find all currently accessible servers and services
- ๐ DNS Resolution Testing: Advanced hostname resolution timing and validation
- ๐ Network Categorization: Automatic grouping by service type (FTP, Streaming, Unknown)
- ๐ Multiple Output Formats: Results in JSON, TXT, and formatted console output
- โก Concurrent Processing: Optimized batch processing for maximum speed
- ๐ฏ Detailed Reports: Comprehensive statistics with min/max/avg response times
bdix-list/
โโโ ๐ bdix-urls.json # Comprehensive database of 4000+ BDIX URLs
โโโ ๐ง list.ts # Advanced ping testing with detailed analytics
โโโ โก simple-ping.ts # Fast connectivity checker for quick tests
โโโ ๐ list-up.ts # Working URLs discovery and filtering
โโโ ๐ type.ts # TypeScript type definitions
โโโ โ๏ธ package.json # Project configuration and scripts
โโโ ๐ README.md # This documentation
- Bun Runtime v1.0.0 or higher installed on your system
- Network Access: Best results when connected to a BDIX-enabled ISP in Bangladesh
- Operating System: macOS, Linux, or Windows with WSL
-
Clone or download this repository:
git clone https://github.com/KhBayazidAhmed/bdix-list cd bdix-list -
Install dependencies:
bun install
-
Verify installation:
bun --version
The tool provides 4 distinct testing modes optimized for different use cases:
# Default quick test - fastest way to get started
bun start
# or
bun run quick
# or
bun run fastWhat it does:
- โก Ultra-fast ping tests with 2-second timeout per URL
- ๐ Tests all 4000+ URLs simultaneously using maximum concurrency
- ๐ Shows top 10 fastest responding sites
- ๐ Provides instant success rate and performance metrics
- ๐พ Saves results to
quick-results.json
Perfect for:
- Quick network health checks
- Finding fastest available servers
- Daily connectivity verification
- Initial BDIX network assessment
# Comprehensive testing with detailed analytics
bun run detailed
# or
bun run analyze
# or
bun run ping
# or
bun run devWhat it does:
- ๐ฏ Performs 5 ping attempts per URL with comprehensive statistics
- ๐ DNS resolution testing with timing analysis
- ๐ Network categorization and advanced reporting
- ๐ Detailed metrics: min/max/avg response times, packet loss, standard deviation
- ๐๏ธ Results categorized by network type (FTP, TV/Streaming, Unknown)
- ๐พ Saves detailed results to
ping-results.json
Perfect for:
- Network troubleshooting and diagnostics
- Performance analysis and optimization
- Detailed connectivity reports
- ISP performance evaluation
# Find only working/accessible URLs
bun run find-working
# or
bun run list-upWhat it does:
- ๐ Tests all URLs and filters only currently working ones
- ๐ Creates clean, curated lists of accessible servers
- ๐พ Saves to both
working-urls.txt(simple list) andworking-urls.json(detailed) - ๐ Provides success rate statistics
Perfect for:
- Creating curated server lists for applications
- Filtering out dead/inactive URLs
- Generating up-to-date BDIX resource lists
- Maintenance and cleanup operations
# Run individual scripts directly
bun run list.ts # Advanced testing script
bun run simple-ping.ts # Fast connectivity checker
bun run list-up.ts # Working URLs finder
# Alternative quick commands
bun test # Same as quick testThe tool generates several types of output files:
{
"timestamp": "2024-01-15T10:30:00.000Z",
"totalTime": 3200,
"summary": {
"total": 150,
"up": 45,
"down": 105,
"successRate": 30.0
},
"upSites": [
{ "url": "http://circleftp.net", "time": 89 }
],
"downSites": ["http://example-down.com"]
}{
"url": "http://circleftp.net",
"name": "CIRCLE",
"status": "UP",
"attempts": 5,
"successfulPings": 5,
"statistics": {
"min": 89.23,
"avg": 91.45,
"max": 95.67,
"stddev": 2.1,
"loss": 0.0
},
"dnsInfo": {
"ip": "103.231.4.58",
"hostname": "circleftp.net",
"resolveTime": 45
}
}http://circleftp.net
http://dhakaftp.com
http://amarsangam.com
{
"timestamp": "2024-01-15T10:30:00.000Z",
"total_checked": 150,
"working_count": 45,
"success_rate": 30.0,
"working_urls": [
{
"url": "http://circleftp.net",
"name": "CIRCLE"
}
]
}- ๐ข UP: Server is fully accessible and responding consistently
- ๐ก PARTIAL: Server responds to some ping attempts (intermittent connectivity)
- ๐ด DOWN: Server is not accessible or not responding
- min/avg/max: Minimum, average, and maximum response times in milliseconds
- stddev: Standard deviation (lower values indicate more consistent performance)
- loss: Percentage of failed ping attempts (0% = perfect, 100% = completely down)
- FTP: File transfer protocol servers (downloads, file sharing)
- TV: Streaming and media servers (IPTV, video content)
- UNKNOWN: Unclassified servers (web services, games, etc.)
You can modify testing parameters by editing the configuration in list.ts:
const DEFAULT_CONFIG: PingConfig = {
attempts: 5, // Number of ping attempts per URL
timeout: 5000, // Timeout in milliseconds (5 seconds)
interval: 500, // Delay between ping attempts (0.5 seconds)
batchSize: 8, // Number of concurrent tests
enableDnsLookup: true, // Enable DNS resolution testing
enablePortCheck: true // Enable port connectivity testing
};// For faster testing (less accurate)
const FAST_CONFIG = {
attempts: 3,
timeout: 2000,
interval: 200,
batchSize: 16
};
// For more reliable results (slower)
const RELIABLE_CONFIG = {
attempts: 10,
timeout: 10000,
interval: 1000,
batchSize: 4
};๐ Fast BDIX Connectivity Check
==================================================
๐ Checking 150 unique URLs...
โก Using fast mode (2s timeout, max concurrency)
============================================================
๐ RESULTS SUMMARY
============================================================
๐ข UP: 45 sites
๐ด DOWN: 105 sites
๐ Success rate: 30.0%
โก Total time: 3.2s
โฑ๏ธ Average response: 125ms
๐ TOP 10 FASTEST:
1. 89ms - http://circleftp.net
2. 156ms - http://dhakaftp.com
3. 178ms - http://amarsangam.com
4. 203ms - http://teacher.com.bd
5. 234ms - http://ftp.jagobd.com
...
โ
Done! Results saved to quick-results.json
๐ Advanced testing CIRCLE - http://new.circleftp.net
๐ DNS lookup for new.circleftp.net...
โ
DNS resolved: new.circleftp.net -> 103.231.4.58 (45ms)
๐ Performing 5 ping attempts...
๐ Ping 1/5: 89.23ms โ
๐ Ping 2/5: 92.15ms โ
๐ Ping 3/5: 87.45ms โ
๐ Ping 4/5: 95.67ms โ
๐ Ping 5/5: 91.82ms โ
๐ Results: 5/5 successful (0.0% loss)
โก Timing: 87.45/91.45/95.67ms (min/avg/max)
The tool uses bdix-urls.json containing 4000+ carefully curated BDIX servers including:
- ๐ FTP Servers: File download and sharing services
- ๐บ Media Streaming: IPTV, video content, and entertainment
- ๐ฎ Game Servers: Local gaming and entertainment servers
- ๐ Educational Resources: University and institutional servers
- ๐ Local Websites: Bangladesh-based web services and portals
- ๐ผ Business Services: Enterprise and commercial servers
We welcome contributions! Here's how you can help:
# Edit bdix-urls.json and add new entries
{
"name": "SERVER_NAME",
"url": "http://server-url.com",
"type": "FTP" | "TV" | "UNKNOWN"
}- Report dead/inactive URLs
- Suggest feature improvements
- Report bugs or connectivity issues
- Share performance optimization ideas
- New testing modes
- Additional output formats
- Integration with other tools
- UI/UX improvements
No results showing:
# Check your BDIX connection
bun run quick # Try fast mode first
# Verify you're on a BDIX-enabled ISP
ping circleftp.netSlow performance:
# Use fast mode for quicker results
bun start
# Or reduce batch size in configuration
# Edit list.ts and change batchSize to 4Permission errors:
# On Linux/macOS, you might need sudo for ping
sudo bun run quick
# Or install iputils-ping (Ubuntu/Debian)
sudo apt-get install iputils-pingDNS resolution failures:
# Check your DNS settings
nslookup circleftp.net
# Try using Google DNS (8.8.8.8, 8.8.4.4)-
Test individual URLs:
ping circleftp.net curl -I http://circleftp.net
-
Check network connectivity:
bun run quick # Should show some UP results -
Verify BDIX access:
- Best results from Bangladesh ISPs (Grameenphone, Robi, Banglalink, etc.)
- Test during off-peak hours (2 AM - 8 AM BD time)
- Optimal Location: Bangladesh with BDIX-enabled ISP
- Peak Hours: Avoid 6 PM - 12 AM BD time for best performance
- ISP Compatibility: Works best with major BD ISPs
- Use fast mode for daily checks
- Use detailed mode for troubleshooting
- Run tests during off-peak hours for accurate results
- Close bandwidth-heavy applications during testing
- All tests use standard ICMP ping (safe and non-intrusive)
- No data is uploaded or downloaded during testing
- Results are stored locally only
This project is licensed under the MIT License - see the LICENSE file for details.
- Bangladesh Internet Exchange (BDIX) for providing local connectivity infrastructure
- Bun.sh for the amazing JavaScript runtime
- ping package for reliable network testing capabilities
- TypeScript for type safety and developer experience
Made with โค๏ธ for the Bangladesh tech community
Report Bug โข Request Feature โข Contribute