Apakah Port 0 Digunakan?

Port 0 bukan nombor port sebenar, tetapi ada tujuan untuknya

Tidak seperti kebanyakan nombor port , port 0 adalah pelabuhan rizab dalam rangkaian TCP / IP , yang bermaksud ia tidak seharusnya digunakan dalam mesej TCP atau UDP .

Port 0 membawa maksud istimewa dalam pengaturcaraan rangkaian , terutamanya pengaturcaraan soket Unix, untuk meminta pelabuhan dinamik, diperuntukkan sistem. Port sifar adalah seperti port wildcard yang memberitahu sistem untuk mencari nombor port yang sesuai.

Port rangkaian dalam rangkaian TCP dan UDP dari nombor sifar hingga 65535. Nombor port dalam julat antara sifar dan 1023 ditakrifkan sebagai pelabuhan sistem atau pelabuhan yang terkenal. Pihak Berkuasa Nombor Ditugaskan Internet (IANA) mengekalkan senarai rasmi penggunaan yang dimaksudkan untuk nombor port ini di internet, dan port sistem 0 tidak boleh digunakan.

Bagaimana Port 0 Bekerja dalam Pengaturcaraan Rangkaian

Mengkonfigurasi sambungan soket rangkaian baru memerlukan satu nombor port diperuntukkan di kedua-dua sumber dan sisi 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 mempunyai pelabuhan sistem yang diperuntukkan terlebih dahulu untuk aplikasi internet asas seperti pelayan web (port 80), tetapi banyak aplikasi rangkaian TCP dan UDP tidak mempunyai port sistem mereka sendiri dan mesti memperolehnya dari sistem operasi peranti mereka setiap kali mereka mula berjalan.

Untuk memperuntukkan nombor port sumbernya, aplikasi memanggil fungsi rangkaian TCP / IP seperti mengikat () untuk meminta satu. Aplikasi ini boleh membekalkan nombor tetap (hard-coded) untuk mengikat () jika mereka memilih untuk meminta nombor tertentu, tetapi permintaan tersebut boleh gagal kerana beberapa aplikasi lain yang berjalan pada sistem mungkin menggunakannya.

Sebagai alternatif, ia boleh memberikan port 0 untuk mengikat () sebagai parameter sambungannya. Ini mencetuskan sistem operasi untuk mencari dan mengembalikan port yang sesuai yang tersedia di julat nombor port dinamik TCP / IP.

Ambil perhatian bahawa aplikasi tidak akan diberikan port 0 tetapi sebaliknya beberapa port dinamik yang lain. Kelebihan konvensyen pengaturcaraan ini adalah kecekapan. Daripada setiap aplikasi yang perlu melaksanakan dan menjalankan kod untuk mencuba pelbagai port sehingga mereka memperoleh yang sah, aplikasi boleh bergantung pada sistem operasi untuk melakukannya.

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

Pelabuhan 0 dan Keselamatan Rangkaian

Lalu lintas rangkaian yang dihantar ke internet untuk tuan rumah mendengar pada port 0 mungkin dijana dari penyerang rangkaian atau secara tidak sengaja oleh aplikasi yang diprogramkan dengan salah. Mesej tindak balas yang dihasilkan oleh tuan rumah sebagai tindak balas kepada trafik port 0 dapat membantu penyerang mempelajari lebih lanjut mengenai kelakuan dan potensi kelemahan rangkaian peranti tersebut.

Banyak pembekal perkhidmatan internet (ISP) menyekat lalu lintas pada port 0 (kedua-dua mesej masuk dan keluar) untuk membantu mengawal eksploit ini.