Paksa siaran UDP IPv4 di semua antarmuka jaringan pada Windows 7 dan yang lebih baru.
Unduh rilis terbaru.
Jika Anda bekerja dengan Windows, Anda mungkin terkejut bahwa paket siaran UDP IPv4 dikirim ke alamat siaran global 255.255.255.255
(semua antarmuka jaringan yang tersedia), sebenarnya tidak akan dikirimkan ke semua antarmuka jaringan yang tersedia yang ada di Windows. sistem.
Hal ini karena implementasi jaringan Windows pada soket BSD menganggap paket tersebut hanya dapat dikirimkan ke antarmuka dengan prioritas tertinggi (“default”). Prioritas antarmuka jaringan ditentukan oleh nilai metriknya yang (biasanya) ditetapkan secara otomatis oleh sistem. Antarmuka dengan nilai metrik terendah akan menjadi antarmuka dengan prioritas tertinggi. Biasanya ini adalah antarmuka yang menghubungkan PC Anda ke internet (atau router rumah Anda). Anda dapat memeriksa nilai metrik yang ditetapkan oleh Windows ke semua antarmuka jaringan dengan menjalankan perintah ini di PowerShell:
Get-NetIPInterface
Apa pun alasan perilaku ini, hal ini memiliki implikasi serius bahwa semua antarmuka jaringan lainnya tidak akan menerima paket siaran UDP global, dan aplikasi tertentu akan mengalami masalah konektivitas jika bergantung pada paket tersebut untuk dikirimkan dengan benar.
Apa pentingnya hal ini? Misalkan PC yang terhubung ke jaringan area lokal dengan subnet standar 192.168.179.0/24 dan VPN dengan subnet 100.100.100.0/24. Sekarang ada layanan yang berjalan di PC ini yang juga harus diakses oleh klien VPN dan layanan ini bergantung pada paket siaran UDP global untuk komunikasi.
Tentu saja, satu-satunya cara untuk mengatasi masalah ini di Windows adalah dengan menjembatani kedua jaringan. Namun menjembatani sangat tidak diinginkan karena hal ini akan mengekspos seluruh LAN Anda ke pihak yang terhubung melalui VPN.
BROADcast memecahkan masalah ini dengan baik dengan menangkap paket siaran UDP global yang dikirim ke rute utama (juga disebut rute "pilihan") dan meneruskannya ke semua antarmuka jaringan lain yang sesuai yang Windows putuskan untuk lewati saja.
Pada tangkapan layar di atas BROADcast menangkap paket siaran UDP global yang dikirim ke 10.10.10.100
alamat LAN asli (yang juga merupakan rute pilihan) dan meneruskannya ke alamat VPN 100.100.100.1
. Tanpa BROADcast berjalan, paket hanya akan terkirim ke 10.10.10.100
, mengabaikan segmen VPN jaringan sepenuhnya.
Contoh perangkat lunak yang sangat bergantung pada fungsi ini meliputi: aplikasi obrolan LAN, beberapa permainan video multipemain, dan aplikasi terdesentralisasi lainnya yang digunakan untuk kolaborasi.
Catatan: BROADcast memerlukan hak administrator untuk dapat dijalankan. Hal ini karena ia harus menangkap paket UDP menggunakan soket mentah, dan ini hanya diperbolehkan untuk akun yang ditinggikan.
BROADcast adalah aplikasi konsol. Itu juga dapat berjalan di latar belakang sebagai layanan Windows.
Mulai menyampaikan paket siaran UDP global:
broadcast.exe -b
Tambahkan -d
untuk menampilkan pesan diagnostik verbose (berguna untuk pemecahan masalah):
broadcast.exe -b -d
Paket siaran akan dikirimkan ke semua antarmuka jaringan kecuali antarmuka default. Gunakan Ctrl+C untuk keluar dari BROADcast dengan bersih.
Sebagai fitur bonus, BROADcast memungkinkan untuk menjadikan antarmuka apa pun sebagai antarmuka default (atau pilihan). Ia melakukannya dengan mengambil nilai metrik antarmuka saat ini yang ingin Anda ubah menjadi default dan menambahkannya ke setiap nilai metrik antarmuka lainnya, menjadikannya nilai metrik terendah dari semuanya:
BROADcast.exe -i " Interface " -m
Jalankan kembali perintah tersebut tanpa argumen -m
untuk membatalkan semua perubahan nilai metrik dan memulihkan nilai otomatis yang dikelola sistem:
BROADcast.exe -i " Interface "
"Antarmuka" adalah nama antarmuka jaringan yang dapat dicari (dan diubah) di bagian "Jaringan dan Pusat Berbagi" pada Panel Kontrol Windows. Anda dapat mengaksesnya dengan cepat dengan menekan Win+R dan membuka:
%windir%explorer.exe shell:::{992CFFA0-F557-101A-88EC-00DD010CCC48}
Untuk menginstal (atau menghapus instalasi) BROADcast sebagai layanan Windows, aktifkan dengan argumen yang sesuai:
broadcast .exe [install | uninstall]
Repositori BROADcast berisi contoh konfigurasi OpenVPN dan skrip untuk menjalankan BROADcast setelah memulai server OpenVPN menggunakan perangkat TAP.
Perhatikan bahwa jika Anda ingin memulai BROADcast dari OpenVPN menggunakan fungsionalitas skrip mulai/berhenti, Anda juga harus menjalankan OpenVPN dengan hak administrator, seperti halnya BROADcast.
Oleh karena itu, sangat disarankan untuk memulai BROADcast secara terpisah sebagai layanan Windows.
Meskipun tidak terkait langsung dengan BROADcast atau siaran UDP sama sekali, penopang jaringan Windows lain yang berguna adalah ForceBindIP.
Tidak seperti BROADcast, yang menyediakan perbaikan untuk protokol UDP, ForceBindIP memberikan perbaikan serupa untuk protokol TCP dengan memaksa aplikasi untuk mengikat (atau mendengarkan) pada antarmuka jaringan tertentu dan bukan pada antarmuka yang dipilih secara otomatis (yang sering kali bukan antarmuka yang Anda pilih). ingin).
Membuat perangkat lunak berkualitas itu sulit dan memakan waktu. Jika menurut Anda BROADcast berguna, Anda dapat membelikan saya ☕!