Network Diagnostics Toolkit untuk educational purposes
Project description
๐ง Netdiag - Network Diagnostics Toolkit v1.1.0
Netdiag adalah library Python untuk diagnosa jaringan yang dirancang khusus untuk keperluan edukasi mahasiswa jurusan Teknologi Rekayasa Internet. Library ini menggunakan modul bawaan Python sebanyak mungkin untuk memberikan pemahaman mendalam tentang networking fundamentals.
๐ Daftar Isi
- Fitur Utama
- Fitur Baru v1.1.0
- Instalasi
- Penggunaan Dasar
- Fungsi yang Tersedia
- Command Line Interface
- Contoh Penggunaan
- Struktur Proyek
- Pengembangan
- Changelog
- Lisensi
๐ Fitur Utama
๐ Ping
- Ping ke host dengan deteksi OS otomatis (Windows/Linux/Mac)
- Parsing output untuk statistik packet loss dan response time
- Support untuk custom count dan timeout
- NEW v1.1.0: Advanced latency analysis dengan jitter calculation
๐ Traceroute
- Traceroute dengan dukungan multi-platform
- Parsing hop-by-hop analysis
- Deteksi jika destination tercapai
๐ IP Utilities
- Local IP: Mendapatkan IP address lokal dari interface aktif
- Public IP: Mendapatkan IP publik menggunakan multiple API services
- IP Info: Informasi geografis dan ISP dari IP address
๐ Port Scanning
- TCP port scanning dengan threading untuk performa optimal
- Scanning port range custom atau common ports
- Service detection untuk port yang terbuka
- NEW v1.1.0: Optimized common ports scanning
๐ DNS Lookup
- Forward DNS lookup (hostname โ IP)
- Reverse DNS lookup (IP โ hostname)
- Bulk DNS lookup untuk multiple hostnames
- Full DNS info dengan IPv4/IPv6 support
- NEW v1.1.0: Enhanced DNS operations dan batch processing
๐ Fitur Baru v1.1.0
๐ Speed Testing & Performance Analysis
bandwidth_test()- Measure download speed dengan test filesping_latency_test()- Advanced latency analysis dengan statistik lengkapconnection_quality_test()- Comprehensive connection quality assessment
๐ Network Interface Management
get_network_interfaces()- Discover semua network interfaces systemget_default_gateway()- Informasi default gatewayanalyze_network_config()- Complete network configuration analysis
๐ค Export & Logging System
export_results()- Export test results ke JSON, CSV, atau TXTcreate_logger()- Advanced logging dengan multiple levelsbatch_export()- Export multiple results dalam berbagai format
๐ง Enhanced CLI Commands
speedtest- Speed testing dari command lineinterfaces- Network interface analysisanalyze- Complete network analysisexport- Result export functionality
๐ป Instalasi
Instalasi Lokal (Development)
# Clone atau download project
git clone https://github.com/yourusername/netdiag.git
cd netdiag
# Install dalam mode development
pip install -e .
Instalasi dari PyPI (jika sudah dipublish)
pip install netdiag
Requirements
- Python 3.7 atau lebih baru (memanfaatkan modern Python features)
- Tidak ada external dependencies (hanya menggunakan standard library)
- Akses internet untuk fungsi IP publik dan IP info
๐ Penggunaan Dasar
Import Library
# Core functions (v1.0.0)
from netdiag import ping, traceroute, get_local_ip, get_public_ip, scan_ports, dns_lookup
# Enhanced functions (v1.1.0)
from netdiag import (
# Speed testing
bandwidth_test, ping_latency_test, connection_quality_test,
# Network interfaces
get_network_interfaces, get_default_gateway, analyze_network_config,
# Export & logging
export_results, create_logger, batch_export,
# Enhanced DNS & ports
reverse_dns_lookup, dns_bulk_lookup, scan_common_ports, get_ip_info
)
# Modern Python 3.7+ features
from netdiag import (
NetworkConfiguration, EnhancedNetworkResult,
NetworkTimeoutError, create_network_result_factory
)
Python 3.7+ Modern Features
# Modern dataclass with slots and frozen for better performance
config = NetworkConfiguration(
host="google.com",
port=443,
timeout=10
)
# Method chaining dengan fluent interface
result = EnhancedNetworkResult(success=True) \
.add_tag("production") \
.add_tag("monitoring") \
.with_metadata(source="automated", priority="high")
print(f"Connection: {config.connection_string}")
print(f"Tags: {result.tags}")
Contoh Sederhana
# Ping test
result = ping("google.com")
print(f"Ping success: {result['success']}")
print(f"Average time: {result['avg_time']} ms")
# DNS lookup
result = dns_lookup("github.com")
print(f"IP address: {result['ip']}")
# Get public IP
result = get_public_ip()
print(f"Your public IP: {result['ip']}")
# NEW v1.1.0: Speed test
speed_result = bandwidth_test('5MB')
print(f"Download speed: {speed_result['download_speed_mbps']} Mbps")
# NEW v1.1.0: Network interfaces
interfaces = get_network_interfaces()
for interface in interfaces['active_interfaces']:
print(f"{interface['name']}: {interface['ip']}")
๐ ๏ธ Fungsi yang Tersedia
๐ ping(host, count=4, timeout=5)
Melakukan ping ke host target.
Parameters:
host(str): Hostname atau IP addresscount(int): Jumlah ping packets (default: 4)timeout(int): Timeout dalam detik (default: 5)
Returns:
{
'success': True,
'host': 'google.com',
'packets_sent': 4,
'packets_received': 4,
'packet_loss': 0.0,
'avg_time': 25.3,
'min_time': 23.1,
'max_time': 28.7
}
Contoh:
result = ping("google.com", count=3, timeout=10)
if result['success']:
print(f"Ping berhasil! Packet loss: {result['packet_loss']}%")
๐ traceroute(host, max_hops=30, timeout=5)
Melakukan traceroute ke host target.
Parameters:
host(str): Hostname atau IP addressmax_hops(int): Maximum hops (default: 30)timeout(int): Timeout per hop (default: 5)
Returns:
{
'success': True,
'host': 'google.com',
'total_hops': 12,
'destination_reached': True,
'hops': [
{
'number': 1,
'ip': '192.168.1.1',
'hostname': 'router.local',
'avg_time': 1.2,
'status': 'success'
},
# ... more hops
]
}
๐ get_local_ip()
Mendapatkan IP address lokal.
Returns:
{
'success': True,
'ip': '192.168.1.100',
'method': 'socket_connect'
}
๐ get_public_ip()
Mendapatkan IP address publik.
Returns:
{
'success': True,
'ip': '203.194.112.34',
'service': 'ipify'
}
๐ scan_ports(host, start_port=1, end_port=1024, timeout=1)
Melakukan TCP port scanning.
Parameters:
host(str): Target hostname atau IPstart_port(int): Port awal (default: 1)end_port(int): Port akhir (default: 1024)timeout(float): Connection timeout (default: 1)
Returns:
{
'success': True,
'host': 'google.com',
'target_ip': '142.250.190.78',
'open_ports': [80, 443],
'closed_ports': [21, 22, 23, ...],
'total_ports_scanned': 1024,
'scan_time': 15.3
}
๐ dns_lookup(hostname)
Melakukan DNS lookup.
Parameters:
hostname(str): Hostname yang akan di-resolve
Returns:
{
'success': True,
'hostname': 'google.com',
'ip': '142.250.190.78',
'ips': ['142.250.190.78', '142.250.190.77'],
'lookup_time': 0.045
}
๐ Fungsi Baru v1.1.0
๐ bandwidth_test(test_size='5MB', timeout=30)
Melakukan bandwidth test dengan download file test.
Parameters:
test_size(str): Ukuran test file ('1MB', '5MB', '10MB')timeout(int): Timeout dalam detik (default: 30)
Returns:
{
'success': True,
'test_size': '5MB',
'download_speed_mbps': 25.34,
'download_time': 1.58,
'bytes_downloaded': 5242880,
'test_url': 'https://speed.hetzner.de/5MB.bin'
}
๐ ping_latency_test(host, count=10)
Advanced latency analysis dengan statistik lengkap.
Parameters:
host(str): Hostname atau IP addresscount(int): Jumlah ping (default: 10)
Returns:
{
'success': True,
'host': 'google.com',
'total_pings': 10,
'successful_pings': 10,
'avg_latency': 28.5,
'min_latency': 22.1,
'max_latency': 35.7,
'jitter': 4.2,
'packet_loss_percent': 0.0
}
๐ get_network_interfaces()
Mendapatkan informasi semua network interfaces.
Returns:
{
'success': True,
'system': 'windows',
'total_interfaces': 5,
'active_interfaces': [
{
'name': 'Wi-Fi',
'ip': '192.168.1.100',
'mac': '00:11:22:33:44:55',
'status': 'up',
'type': 'wireless'
}
]
}
๐ค export_results(results, filename, format='json')
Export test results ke file.
Parameters:
results(dict): Hasil dari fungsi netdiagfilename(str): Nama file outputformat(str): Format export ('json', 'csv', 'txt')
Returns:
{
'success': True,
'filename': 'ping_test_20251002.json',
'format': 'json',
'file_size': 1024,
'records_exported': 1
}
๐ connection_quality_test(host)
Comprehensive connection quality assessment.
Returns:
{
'success': True,
'quality_score': 85,
'quality_rating': 'Very Good',
'bandwidth_test': {...},
'latency_test': {...},
'recommendations': [
'Connection quality looks good!',
'Suitable for HD streaming and gaming'
]
}
## ๐ฅ๏ธ Command Line Interface
Netdiag menyediakan interface command line yang lengkap:
### Network Diagnostics
```bash
# Ping testing
python -m netdiag ping google.com
python -m netdiag ping google.com 5 10 # 5 packets, 10s timeout
# Traceroute
python -m netdiag traceroute google.com
python -m netdiag traceroute google.com 20 3 # max 20 hops, 3s timeout
# Port scanning
python -m netdiag scan google.com 80 443 22
python -m netdiag scan-range google.com 80 90 # scan range 80-90
๐ Performance Testing (NEW v1.1.0)
# Speed test - bandwidth testing
python -m netdiag speedtest
python -m netdiag speedtest --host httpbin.org --duration 10
# Latency analysis
python -m netdiag latency google.com
python -m netdiag latency google.com --count 20
# Connection quality assessment
python -m netdiag quality google.com
๐ง System Analysis (NEW v1.1.0)
# Network interfaces discovery
python -m netdiag interfaces
# Network configuration analysis
python -m netdiag analyze
๐ Export & Logging (NEW v1.1.0)
# Export results to various formats
python -m netdiag export results.json --format json
python -m netdiag export results.csv --format csv
IP Utilities
python -m netdiag localip
python -m netdiag publicip
python -m netdiag ipinfo 8.8.8.8
Port Scanning
python -m netdiag portscan google.com common
python -m netdiag portscan google.com 1 100
DNS Lookup
python -m netdiag dns google.com
python -m netdiag dns reverse 8.8.8.8
python -m netdiag dns info github.com
python -m netdiag dns bulk google.com,github.com,stackoverflow.com
๐ NEW v1.1.0 Commands
Speed Testing
python -m netdiag speedtest 5MB
python -m netdiag speedtest latency google.com
python -m netdiag speedtest quality google.com
Network Interfaces
python -m netdiag interfaces
python -m netdiag interfaces gateway
Network Analysis
python -m netdiag analyze
Export Results
python -m netdiag export json results
python -m netdiag export csv results
Help
python -m netdiag help
๐ก Contoh Penggunaan
๐ฌ Analisis Host Lengkap dengan Fitur Baru
from netdiag import *
def comprehensive_host_analysis(hostname):
print(f"๐ฌ Comprehensive Analysis of {hostname}...")
# 1. DNS Resolution
dns_result = dns_lookup(hostname)
if dns_result['success']:
ip = dns_result['ip']
print(f"โ
Resolved to: {ip}")
else:
print(f"โ DNS failed: {dns_result['error']}")
return
# 2. Connectivity Test
ping_result = ping(ip, count=5)
if ping_result['success']:
print(f"โ
Host reachable (avg: {ping_result['avg_time']} ms)")
else:
print(f"โ Host unreachable")
return
# 3. Connection Quality Assessment (NEW v1.1.0)
quality_result = connection_quality_test(hostname)
if quality_result['success']:
print(f"๐ฏ Connection Quality: {quality_result['quality_rating']} (Score: {quality_result['quality_score']}/100)")
# 4. Bandwidth Test (NEW v1.1.0)
bandwidth_result = bandwidth_test(host=hostname, duration=5)
if bandwidth_result['success']:
print(f"๐ Bandwidth: {bandwidth_result['download_speed']:.2f} MB/s down, {bandwidth_result['upload_speed']:.2f} MB/s up")
# 5. Port Scan
from netdiag.portscan import scan_common_ports
port_result = scan_common_ports(hostname)
if port_result['success'] and port_result['open_ports']:
print(f"๐ Open services: {port_result['open_ports']}")
# 6. Export Results (NEW v1.1.0)
results = {
'hostname': hostname,
'dns': dns_result,
'ping': ping_result,
'quality': quality_result,
'bandwidth': bandwidth_result,
'ports': port_result
}
export_result = export_results(results, f'{hostname}_analysis', 'json')
if export_result['success']:
print(f"๐ Results exported to: {export_result['filename']}")
# Jalankan analisis lengkap
comprehensive_host_analysis("github.com")
๐ Network System Analysis (NEW v1.1.0)
from netdiag import get_network_interfaces, get_default_gateway, analyze_network_config
def analyze_network_system():
print("๐ง Analyzing Network System Configuration...")
# 1. Network Interfaces
interfaces = get_network_interfaces()
if interfaces['success']:
print(f"๐ Found {len(interfaces['interfaces'])} network interfaces:")
for iface in interfaces['interfaces']:
print(f" - {iface['name']}: {iface['ip']} ({iface['status']})")
# 2. Default Gateway
gateway = get_default_gateway()
if gateway['success']:
print(f"๐ Default Gateway: {gateway['gateway']}")
# 3. Network Configuration Analysis
config = analyze_network_config()
if config['success']:
print(f"๏ฟฝ Network Analysis:")
print(f" - Active Interfaces: {len(config['active_interfaces'])}")
print(f" - Default Route: {config['default_route']}")
print(f" - DNS Servers: {', '.join(config.get('dns_servers', []))}")
analyze_network_system()
๐ Performance Monitoring with Export
from netdiag import ping_latency_test, bandwidth_test, export_results
from netdiag.export import NetdiagLogger
import time
def monitor_performance(host, duration_minutes=5):
logger = NetdiagLogger('performance_monitor')
results = []
print(f"๐ Monitoring {host} for {duration_minutes} minutes...")
end_time = time.time() + (duration_minutes * 60)
while time.time() < end_time:
# Latency test
latency = ping_latency_test(host, count=3)
# Bandwidth test (shorter duration for monitoring)
bandwidth = bandwidth_test(host=host, duration=3)
result = {
'timestamp': time.time(),
'host': host,
'latency': latency,
'bandwidth': bandwidth
}
results.append(result)
logger.log_test_result('performance_monitor', result)
if latency['success']:
print(f"โฑ๏ธ Latency: {latency['avg_ms']:.1f}ms", end="")
if bandwidth['success']:
print(f" | ๐ Speed: {bandwidth['download_speed']:.1f} MB/s")
time.sleep(30) # Test every 30 seconds
# Export all results
export_results(results, f'{host}_performance_monitor', 'csv')
print(f"โ
Monitoring complete. Results saved.")
# Monitor performance
monitor_performance("google.com", duration_minutes=2)
๐ Multi-Host Network Assessment
from netdiag import dns_bulk_lookup, ping, connection_quality_test
def assess_multiple_hosts(hostnames):
print("๐ฏ Assessing Multiple Hosts...")
# Bulk DNS lookup
dns_results = dns_bulk_lookup(hostnames)
assessment_results = []
for result in dns_results['results']:
if result['success']:
host_assessment = {
'hostname': result['hostname'],
'ip': result['ip']
}
# Quick ping test
ping_result = ping(result['ip'], count=3, timeout=5)
host_assessment['ping'] = ping_result
# Quality assessment for reachable hosts
if ping_result['success']:
quality = connection_quality_test(result['hostname'])
host_assessment['quality'] = quality
status = "๏ฟฝ EXCELLENT" if quality.get('quality_score', 0) > 80 else \
"๐ก GOOD" if quality.get('quality_score', 0) > 60 else \
"๐ด POOR"
print(f"{status} {result['hostname']}: {quality.get('quality_rating', 'Unknown')}")
else:
print(f"๐ด DOWN {result['hostname']}: Unreachable")
assessment_results.append(host_assessment)
# Export comprehensive results
export_results(assessment_results, 'multi_host_assessment', 'json')
return assessment_results
# Assess multiple hosts
hosts = ["google.com", "github.com", "stackoverflow.com", "reddit.com"]
assess_multiple_hosts(hosts)
๐ Struktur Proyek v1.1.0
netdiag/
โโโ netdiag/
โ โโโ __init__.py # Main package exports (19 functions)
โ โโโ __main__.py # Enhanced CLI interface (11 commands)
โ โโโ ping.py # Ping functionality
โ โโโ traceroute.py # Traceroute functionality
โ โโโ iputils.py # IP utilities (local/public IP, IP info)
โ โโโ portscan.py # Port scanning capabilities
โ โโโ dnslookup.py # DNS lookup operations
โ โโโ speedtest.py # ๐ Bandwidth testing & latency analysis
โ โโโ interfaces.py # ๐ Network interfaces & system discovery
โ โโโ export.py # ๐ Results export & advanced logging
โโโ setup.py # Package setup (v1.1.0)
โโโ README.md # Enhanced documentation
โโโ CHANGELOG.md # ๐ Version history & features
โโโ example.py # Updated usage examples with new features
๐ New Modules in v1.1.0
- speedtest.py: Bandwidth testing, latency analysis, connection quality assessment
- interfaces.py: Network interface discovery, gateway detection, configuration analysis
- export.py: Multi-format export (JSON/CSV/TXT), advanced logging, batch operations
๐งช Testing dan Development
Menjalankan Contoh dengan Fitur Baru
# Jalankan semua demo (including new v1.1.0 features)
python example.py
# Jalankan demo spesifik
python example.py ping
python example.py dns
python example.py port
python example.py speedtest # ๐ NEW v1.1.0
python example.py interfaces # ๐ NEW v1.1.0
Testing Fitur Baru v1.1.0
# Test bandwidth capabilities
python -c "from netdiag import bandwidth_test; print(bandwidth_test())"
# Test network interfaces
python -c "from netdiag import get_network_interfaces; print(get_network_interfaces())"
# Test connection quality
python -c "from netdiag import connection_quality_test; print(connection_quality_test('google.com'))"
# Test export functionality
python -c "from netdiag import export_results; print(export_results({'test': 'data'}, 'test', 'json'))"
Manual Testing dari Command Line
# Test original functionality
python -m netdiag ping google.com
python -m netdiag traceroute google.com
python -m netdiag portscan google.com common
# Test new v1.1.0 CLI commands
python -m netdiag speedtest
python -m netdiag interfaces
python -m netdiag analyze
python -m netdiag export test_results.json --format json
๐ Educational Notes
Konsep yang Dipelajari dalam v1.1.0
-
Advanced Networking
- Bandwidth measurement techniques
- Network interface enumeration
- Quality of Service (QoS) assessment
- Performance monitoring methodologies
-
Enhanced Python Programming
- Concurrent testing with threading
- File I/O operations (JSON, CSV, TXT)
- Cross-platform system calls
- Advanced data structure manipulation
- Logging and monitoring systems
-
Professional Development Practices
- Version management and changelog maintenance
- Backward compatibility preservation
- Comprehensive documentation
- Modular architecture design
Best Practices Demonstrated
- โ Standard library preference for compatibility
- โ Robust error handling with detailed feedback
- โ Comprehensive documentation with examples
- โ Modular, reusable code architecture
- โ Cross-platform compatibility maintained
- โ NEW: Performance testing methodologies
- โ NEW: Data export and persistence patterns
- โ NEW: System configuration analysis
๐ง Advanced Usage Examples
Custom Performance Monitoring
from netdiag import ping_latency_test, bandwidth_test
from netdiag.export import NetdiagLogger
import time
# Setup monitoring
logger = NetdiagLogger('network_monitor')
hosts = ['google.com', 'github.com', 'stackoverflow.com']
for host in hosts:
# Comprehensive testing
latency = ping_latency_test(host, count=10)
bandwidth = bandwidth_test(host=host, duration=5)
# Log results
logger.log_test_result('monitoring', {
'host': host,
'latency': latency,
'bandwidth': bandwidth,
'timestamp': time.time()
})
Network Interface Analysis
from netdiag import get_network_interfaces, get_default_gateway, analyze_network_config
# Get detailed interface information
interfaces = get_network_interfaces()
gateway = get_default_gateway()
config = analyze_network_config()
# Analyze configuration
if all([interfaces['success'], gateway['success'], config['success']]):
print("๐ง Network Configuration Summary:")
print(f" Active Interfaces: {len(config['active_interfaces'])}")
print(f" Default Gateway: {gateway['gateway']}")
print(f" Primary Interface: {config.get('primary_interface', 'Unknown')}")
๐ What's New in v1.1.0
Major Enhancements
- ๐ Bandwidth Testing: Real-world speed testing capabilities
- ๐ง System Analysis: Network interface and configuration discovery
- ๐ Export Functions: Multi-format result export with logging
- โก Performance Tools: Latency analysis and connection quality assessment
- ๐ฏ Enhanced CLI: 4 new command-line tools for advanced diagnostics
Compatibility
- โ Modern Python: Upgraded to Python 3.7+ with modern type hints and features
- โ Enhanced Architecture: Clean code principles with dataclasses and protocols
- โ Cross-Platform: Windows, macOS, and Linux support preserved
- โ Dependencies: Still uses only Python standard library
โ ๏ธ Limitations dan Considerations
Performance Considerations
- Bandwidth Testing: May consume network data during testing
- Port Scanning: Large ranges may take significant time
- Concurrent Operations: Threading used but limited by network latency
Platform-Specific Notes
- Windows: Some network interface data requires elevated privileges
- macOS/Linux: Better support for detailed interface information
- Network Dependencies: Internet connection required for external tests
Rate Limiting
- External APIs: IP geolocation services may have rate limits
- Bandwidth Tests: Avoid excessive testing to prevent ISP throttling
- DNS Queries: Bulk operations should be used responsibly
๐ค Contributing
Contributions welcome! For v1.1.0 and beyond:
- Fork repository ini
- Buat feature branch (
git checkout -b feature/AmazingFeature) - Test fitur baru dengan
python example.py - Update documentation jika diperlukan
- Commit changes (
git commit -m 'Add some AmazingFeature') - Push ke branch (
git push origin feature/AmazingFeature) - Buat Pull Request
Development Areas for Future Versions
- IPv6 support enhancement
- Additional export formats (XML, YAML)
- Real-time monitoring dashboard
- Network security scanning features
- Integration with network monitoring tools
๐ License
Distributed under the MIT License. See LICENSE file for more information.
๐ Support & Resources
- ๐ Documentation: This README and inline code comments
- ๐ Bug Reports: Please open GitHub issues
- ๐ก Feature Requests: Suggestions welcome via GitHub discussions
- ๐ Learning: Check
example.pyfor practical usage patterns - ๐ Changelog: See
CHANGELOG.mdfor version history
netdiag v1.1.0 - From simple educational tool to professional networking toolkit! ๐
Jika ada pertanyaan atau issues:
- ๐ง Email: satriadivop354@gmail.com
- ๐ Issues: GitHub Issues
- ๐ Docs: Documentation
๐ Acknowledgments
- Terima kasih kepada komunitas Python untuk standard library yang powerful
- Inspirasi dari tools networking klasik seperti ping, traceroute, nmap
- Educational focus untuk mahasiswa Teknologi Rekayasa Internet
Happy Networking! ๐
"Understanding networks through code" - Netdiag Team
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file netdiag-1.1.0.tar.gz.
File metadata
- Download URL: netdiag-1.1.0.tar.gz
- Upload date:
- Size: 198.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
33e60efcd2d835420b570fd377021007c47e9264ff05063bef170ef98b867884
|
|
| MD5 |
8dcba41f25f44716dde37e03cd965357
|
|
| BLAKE2b-256 |
6d50f2753927a7c213a098c8c484209804502bb98d57bc7e7f3fe303c41d4a3c
|
File details
Details for the file netdiag-1.1.0-py3-none-any.whl.
File metadata
- Download URL: netdiag-1.1.0-py3-none-any.whl
- Upload date:
- Size: 58.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
08c55b79a60f54bba3960409cb8bfa37d585e20b1d7b3697ccea1bf9af0feb5f
|
|
| MD5 |
b8eed8fc6045721df5d2df6416a2b694
|
|
| BLAKE2b-256 |
ae4a3e2205c3c5ff93864b8c4a50647358a85af0c045c416293ab69c1e6c0e4c
|