$ netstat -nat
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN
tcp6 0 0 :::22 :::* LISTEN
Mengapa ada dua catatan port 22 ( :::22
dan 0.0.0.0:22
) dan mengapa satu menggunakan protokol sebagai tcp
dan yang lainnya sebagaitcp6
Ini ada di Ubuntu 12.04.4
Jawaban:
Secara default
sshd
menggunakan ipv4 dan ipv6. Anda dapat mengkonfigurasi protokol yang digunakan sshd melaluiAddressFamily
instruksi di/etc/ssh/sshd_config
Untuk ipv4 & ipv6 (default)
Hanya untuk ipv4
Hanya untuk ipv6
Setelah Anda membuat perubahan untuk
sshd_config
memulai kembalisshd
agar perubahan berlaku.sumber
Sebenarnya, ini sedikit lebih menarik
Pada dasarnya, bahkan jika Anda sepenuhnya menonaktifkan IPv6, beberapa soket akan diidentifikasi sebagai "TCP6 / UDP6" karena alasan kernel yang aneh.
Saya perhatikan setelah menjalankan netstat di ponsel android yang terhubung ke jaringan 3G tanpa tinta dukungan IPv6 (dinonaktifkan di pengaturan APN dan secara eksplisit tidak didukung oleh operator)
Setelah saya melihat bahwa koneksi TCP6 dari WhatsApp tetap ada, saya mulai meneliti dan menemukan tautan ini: https://blog.codecentric.de/en/2014/04/note-netstat/
sumber
Dimungkinkan untuk hanya mengikat
::
dan berbicara baik IPv4 dan IPv6. Saya bertanya-tanya mengapa beberapa aplikasi, termasuk openssh, tidak memanfaatkan ini.Bagian ini tentang IPv6 dalam buku pegangan pengembang FreeBSD memiliki beberapa komentar menarik yang mungkin relevan:
Kami juga dapat berspekulasi bahwa perilaku default ini ditentukan ketika sejumlah besar sistem tidak memiliki dukungan IPv6.
sumber