Untuk Apa Port 0 Digunakan?

Isi kandungan:

Untuk Apa Port 0 Digunakan?
Untuk Apa Port 0 Digunakan?
Anonim

Port 0 membawa kepentingan istimewa dalam pengaturcaraan rangkaian, terutamanya dalam OS Unix apabila ia berkaitan dengan pengaturcaraan soket di mana port digunakan untuk meminta port dinamik yang diperuntukkan sistem. Port 0 ialah port wildcard yang memberitahu sistem untuk mencari nombor port yang sesuai.

Tidak seperti kebanyakan nombor port, port 0 ialah port terpelihara dalam rangkaian TCP/IP, bermakna ia tidak boleh digunakan dalam mesej TCP atau UDP. Port rangkaian dalam TCP dan UDP berjulat dari nombor sifar hingga 65535. Nombor port dalam julat antara sifar dan 1023 ditakrifkan sebagai port bukan fana, port sistem atau port terkenal. Pihak Berkuasa Nombor Ditugaskan Internet (IANA) mengekalkan penyenaraian rasmi penggunaan yang dimaksudkan bagi nombor port ini di Internet, dan port sistem 0 tidak boleh digunakan.

Cara TCP/UDP Port 0 Berfungsi dalam Pengaturcaraan Rangkaian

Image
Image

Mengkonfigurasi sambungan soket rangkaian baharu memerlukan satu nombor port diperuntukkan pada kedua-dua bahagian sumber dan destinasi. Mesej TCP atau UDP yang dihantar oleh pemula (sumber) mengandungi kedua-dua nombor port supaya penerima mesej (destinasi) boleh mengeluarkan mesej respons kepada titik akhir protokol yang betul.

IANA telah memperuntukkan port sistem yang ditetapkan untuk aplikasi internet asas seperti pelayan web (port 80), tetapi banyak aplikasi rangkaian TCP dan UDP tidak mempunyai port sistem mereka sendiri dan mesti mendapatkan satu daripada sistem pengendalian peranti mereka setiap kali ia dijalankan.

Untuk memperuntukkan nombor port sumbernya, aplikasi memanggil fungsi rangkaian TCP/IP seperti bind() untuk meminta satu. Aplikasi boleh membekalkan nombor tetap (berkod keras) untuk mengikat() jika mereka lebih suka meminta nombor tertentu, tetapi permintaan sedemikian boleh gagal kerana aplikasi lain yang berjalan pada sistem mungkin sedang menggunakannya.

Sebagai alternatif, ia boleh menyediakan port 0 untuk mengikat() sebagai parameter sambungannya. Itu mencetuskan sistem pengendalian untuk mencari secara automatik dan mengembalikan port tersedia yang sesuai dalam julat nombor port dinamik TCP/IP.

Aplikasi tidak diberikan port 0 tetapi beberapa port dinamik lain. Kelebihan konvensyen pengaturcaraan ini ialah kecekapan. Daripada setiap aplikasi melaksanakan dan menjalankan kod untuk mencuba berbilang port sehingga mereka memperoleh yang sah, apl bergantung pada sistem pengendalian.

Unix, Windows dan sistem pengendalian lain berbeza-beza dalam pengendalian port 0, tetapi konvensyen umum yang sama terpakai.

Port 0 dan Keselamatan Rangkaian

Trafik rangkaian yang dihantar merentasi internet kepada hos yang mendengar pada port 0 mungkin dijana daripada penyerang rangkaian atau secara tidak sengaja oleh aplikasi yang diprogramkan secara tidak betul. Mesej respons yang dihoskan oleh hos sebagai tindak balas kepada trafik port 0 membantu penyerang mempelajari gelagat dan potensi kelemahan rangkaian peranti tersebut.

Banyak penyedia perkhidmatan Internet (ISP) menyekat trafik pada port 0, kedua-dua mesej masuk dan keluar, untuk mengelakkan eksploitasi ini.

Soalan Lazim

    Apakah nombor port?

    Nombor port yang digunakan untuk sambungan rangkaian TCP/IP bertindak sebagai maklumat alamat, mengenal pasti penghantar dan penerima mesej. Nombor port membenarkan pelbagai aplikasi pada rangkaian yang sama berkongsi sumber pada masa yang sama.

    Bagaimanakah saya boleh mencari nombor port?

    Untuk mencari nombor port alamat IP tertentu, pergi ke command prompt, taip netstat -a, kemudian tekan Enter. Anda akan melihat senarai sambungan TCP aktif bersama-sama dengan alamat IP dan nombor port yang dipisahkan oleh titik bertindih.

    Bolehkah saya menyambung ke port 0?

    Tidak. Secara rasmi, port 0 tidak wujud dan anda tidak boleh menyambung kepadanya, kerana ia adalah nombor port yang tidak sah. Walau bagaimanapun, anda boleh menghantar paket Internet ke dan dari port 0 sama seperti yang anda lakukan dengan nombor port lain.

Disyorkan: