Artikel ini adalah yang pertama dalam seri yang berpusat di sekitar rekomendasi perintah 'bersumber dari kerumunan'. Saya bertanya kepada sekelompok kontributor inti kami apa perintah Linux favorit mereka, dan tanggapannya luar biasa. Kami menerima 46 perintah individu, dan banyak di antaranya digarisbawahi oleh banyak pengiriman.
Seri ini mewakili daftar lengkap, dipecah berdasarkan kategori. Saya telah menjuluki tujuh perintah pertama ini "Perintah jaringan yang harus diketahui semua orang."
Catatan Editor :Evans Amoany memberikan informasi perintah dan contoh. Salah satu Sudoer kami dan admin *nix yang berbakat. Berteriak kepada Evans karena melakukan pekerjaan berat di sini.
[ Anda mungkin juga menikmati: Jaringan Linux:13 kegunaan untuk netstat ]
ip
ip
command adalah salah satu perintah dasar yang dibutuhkan setiap administrator dalam pekerjaan sehari-hari, mulai dari menyiapkan sistem baru dan menetapkan IP hingga memecahkan masalah sistem yang ada. ip
perintah dapat menampilkan informasi alamat, memanipulasi perutean, plus menampilkan jaringan berbagai perangkat, antarmuka, dan terowongan.
Sintaksnya adalah sebagai berikut:
ip
OBJECT adalah bagian terpenting dari sinopsis, dan berikut ini didukung (beberapa dihilangkan untuk singkatnya):
address - alamat protokol (IPv4 atau IPv6) pada perangkat.
- terowongan - terowongan melalui IP
- rute - entri tabel perutean
- aturan - aturan dalam basis data kebijakan perutean
- vrf - mengelola perutean virtual dan perangkat penerusan
- xfrm - mengelola kebijakan IPSec
Berikut adalah beberapa kasus penggunaan umum untuk ip
perintah.
Untuk menampilkan alamat IP yang ditetapkan ke antarmuka di server Anda:
[root@server ~]# ip address show
Untuk menetapkan IP ke antarmuka, misalnya, enps03 :
[root@server ~]# ip address add 192.168.1.254/24 dev enps03
Untuk menghapus IP pada antarmuka:
[root@server ~]# ip address del 192.168.1.254/24 dev enps03
Ubah status antarmuka dengan membawa antarmuka eth0 daring:
[root@server ~]# ip link set eth0 up
Ubah status antarmuka dengan membawa antarmuka eth0 offline:
[root@server ~]# ip link set eth0 down
Ubah status antarmuka dengan mengubah MTU eth0 :
[root@server ~]# ip link set eth0 mtu 9000
Ubah status antarmuka dengan mengaktifkan mode promiscuous untuk eth0 :
[root@server ~]# ip link set eth0 promisc on
Tambahkan rute default (untuk semua alamat) melalui gateway lokal 192.168.1.254 yang dapat dijangkau pada perangkat eth0 :
[root@server ~]# ip route add default via 192.168.1.254 dev eth0
Tambahkan rute ke 192.168.1.0/24 melalui gateway di 192.168.1.254:
[root@server ~]# ip route add 192.168.1.0/24 via 192.168.1.254
Tambahkan rute ke 192.168.1.0/24 yang dapat dijangkau di perangkat eth0 :
[root@server ~]# ip route add 192.168.1.0/24 dev eth0
Hapus rute untuk 192.168.1.0/24 melalui gateway di 192.168.1.254:
[root@server ~]# ip route delete 192.168.1.0/24 via 192.168.1.254
Menampilkan rute yang diambil untuk IP 10.10.1.4:
[root@server ~]# ip route get 10.10.1.4
ifconfig
ifconfig
perintah adalah/adalah pokok di banyak sabuk alat sysadmin untuk mengonfigurasi dan memecahkan masalah jaringan. Sejak itu telah digantikan oleh ip
perintah yang dibahas di atas. Namun, jika Anda ingin informasi lebih lanjut, lihat artikel kami yang diterbitkan sebelumnya di sini.
mtr
MTR (Matt's traceroute) adalah program dengan antarmuka baris perintah yang berfungsi sebagai alat diagnostik dan pemecahan masalah jaringan. Perintah ini menggabungkan fungsionalitas ping
dan traceroute
perintah. Sama seperti traceroute
, mtr
perintah akan menunjukkan rute dari komputer ke host yang ditentukan. mtr
menyediakan banyak statistik tentang setiap hop, seperti waktu respons dan persentase. Dengan mtr
perintah, Anda akan mendapatkan informasi lebih lanjut tentang rute dan dapat melihat perangkat bermasalah di sepanjang jalan. Jika Anda melihat peningkatan waktu respons atau kehilangan paket secara tiba-tiba, maka jelas, ada tautan yang buruk di suatu tempat.
Sintaks perintahnya adalah sebagai berikut:
mtr
Mari kita lihat beberapa kasus penggunaan umum.
mtr
dasar perintah menunjukkan statistik, termasuk setiap hop (nama host) dengan waktu dan kerugian%:
[root@server ~]# mtr google.com
Tampilkan alamat IP numerik (jika Anda menggunakan -g
, Anda akan mendapatkan alamat IP (angka) alih-alih nama host):
[root@server ~]# mtr -g google.com
Tampilkan juga alamat IP numerik dan nama host:
[root@server ~]# mtr -b google.com
Atur jumlah ping yang ingin Anda kirim:
[root@server ~]# mtr -c 10 google.com
Dapatkan laporan dari mtr
hasil perintah:
[root@server ~]# mtr -r -c 10 google.com > mtr-command-google-output
atau:
[root@server ~]# mtr -rw -c 10 google.com > mtr-command-google-output
Paksa penggunaan TCP alih-alih ICMP:
[root@server ~]# mtr –tcp google.com
Paksa penggunaan UDP alih-alih ICMP:
[root@server ~]# mtr –udp google.com
Tetapkan jumlah hop maksimum:
[root@server ~]# mtr -m 35 216.58.223.78
Tentukan ukuran paket:
[root@server ~]# mtr -r -s 50 google.com
Cetak ke keluaran CSV:
[root@server ~]# mtr –csv google.com
Cetak ke keluaran XML:
[root@server ~]# mtr –xml google.com
tcpdump
tcpdump
perintah dirancang untuk menangkap dan menampilkan paket.
Anda dapat menginstal tcpdump
dengan perintah di bawah ini:
[root@server ~]# dnf install -y tcpdump
Sebelum memulai pengambilan apa pun, Anda perlu mengetahui antarmuka mana yang tcpdump
bisa menggunakan. Anda perlu menggunakan sudo atau memiliki akses root dalam kasus ini.
[root@server ~]# tcpdump -D
1 eth0
2 nflog
3 nfqueue
4 usbmon1
5 any
6 lo (Loopback)
Jika Anda ingin mencatat lalu lintas di eth0 , Anda dapat memulainya dengan tcpdump -i eth0
contoh keluaran:
[root@server ~]# tcpdump -i eth0
[root@server ~]# tcpdump -i eth0 -c 10
Tangkap lalu lintas ke dan dari satu host
Anda dapat memfilter lalu lintas yang berasal dari host tertentu. Misalnya, untuk menemukan lalu lintas yang datang dan pergi ke 8.8.8.8, gunakan perintah:
[root@server ~]# tcpdump -i eth0 -c 10 host 8.8.8.8
Untuk lalu lintas yang berasal dari 8.8.8.8, gunakan:
[root@server ~]# tcpdump -i eth0 src host 8.8.8.8
Untuk lalu lintas keluar menuju 8.8.8.8, gunakan:
[root@server ~]# tcpdump -i eth0 dst host 8.8.8.8
Tangkap lalu lintas ke dan dari jaringan
Anda juga dapat menangkap lalu lintas ke dan dari jaringan tertentu menggunakan perintah di bawah ini:
[root@server ~]# tcpdump -i eth0 net 10.1.0.0 mask 255.255.255.0
atau:
[root@server ~]# tcpdump -i eth0 net 10.1.0.0/24
Anda juga dapat memfilter berdasarkan sumber atau tujuan.
Berdasarkan sumbernya (lalu lintas datang dari):
[root@server ~]# tcpdump -i eth0 src net 10.1.0.0/24
Berdasarkan tujuan (lalu lintas menuju):
[root@server ~]# tcpdump -i eth0 dst net 10.1.0.0/24
Mencatat lalu lintas ke dan dari nomor port
Tangkap hanya lalu lintas port DNS 53:
[root@server ~]# tcpdump -i eth0 port 53
Untuk host tertentu,
[root@server ~]# tcpdump -i eth0 host 8.8.8.8 and port 53
Untuk menangkap lalu lintas HTTPS saja,
[root@server ~]# tcpdump -i eth0 -c 10 host www.google.com and port 443
Untuk menangkap semua port kecuali port 80 dan 25,
[root@server ~]# tcpdump -i eth0 port not 53 and not 25
netstat
netstat
alat untuk mencetak koneksi jaringan, tabel perutean, statistik antarmuka, koneksi penyamaran, dan keanggotaan multicast. Utilitas ini adalah bagian dari paket net-tool, seperti halnya ifconfig
. Dalam paket iproute2 baru, ss
alat digunakan untuk mencapai tujuan yang sama.
Jika netstat
tidak ditemukan di sistem Anda, instal dengan perintah ini:
[root@server ~]# dnf install net-tools
Penggunaan utama netstat
tanpa parameter apa pun:
[root@server ~]# netstat
Untuk penggunaan lanjutan, perluas netstat
perintah dengan opsi:
netstat <options>
Atau daftar opsi satu per satu:
netstat <option 1> <option 2> <option 3>
Untuk membuat daftar semua port dan koneksi terlepas dari status atau protokolnya, gunakan:
[root@server ~]# netstat -a
Daftar semua port TCP dengan menjalankan:
[root@server ~]# netstat -at
Daftar semua port UDP dengan:
[root@server ~]# netstat -au
Untuk mengembalikan daftar hanya port yang mendengarkan untuk semua protokol, gunakan:
[root@server ~]# netstat -l
Daftar semua port TCP yang mendengarkan dengan:
[root@server ~]# netstat -lt
Kembalikan hanya mendengarkan port UDP dengan menjalankan:
[root@server ~]# netstat -lu
Untuk membuat daftar port mendengarkan UNIX, gunakan:
[root@server ~]# netstat -lx
Tampilkan statistik untuk semua port terlepas dari protokolnya dengan:
[root@server ~]# netstat -s
Daftar statistik untuk port TCP hanya dengan:
[root@server ~]# netstat -st
Untuk melihat koneksi TCP dengan nama PID/Program yang terdaftar, gunakan:
[root@server ~]# netstat -tp
Untuk menemukan proses yang menggunakan nomor port tertentu, jalankan:
[root@server ~]# netstat -an | grep ‘:<port number>’
nslookup
Gunakan nslookup
utilitas untuk menanyakan server nama Internet secara interaktif. Gunakan untuk melakukan kueri DNS dan menerima nama domain atau alamat IP, atau catatan DNS spesifik lainnya.
Perhatikan contoh umum berikut.
Untuk menemukan catatan A dari а domain:
[root@server ~]# nslookup example.com
Untuk memeriksa catatan NS domain:
[root@server ~]# nslookup -type=ns example.com
Untuk menemukan data MX yang bertanggung jawab atas pertukaran email:
[root@server ~]# nslookup -query=mx example.com
Untuk menemukan semua data DNS domain yang tersedia:
[root@server ~]# nslookup -type=any example.com
Untuk memeriksa penggunaan server DNS tertentu (dalam hal ini, kueri menggunakan server nama khusus ns1.nsexample.com):
[root@server ~]# nslookup example.com ns1.nsexample.com
Memeriksa data DNS A untuk melihat IP domain adalah praktik umum, tetapi terkadang Anda perlu memverifikasi apakah alamat IP terkait dengan domain tertentu. Untuk tujuan itu, Anda memerlukan pencarian DNS terbalik.
[root@server ~]# nslookup 10.20.30.40
ping
Ping adalah alat yang memverifikasi konektivitas tingkat IP ke komputer TCP/IP lain dengan mengirimkan pesan Echo Request Internet Control Message Protocol (ICMP). Tanda terima pesan Echo Reply yang sesuai ditampilkan, bersama dengan waktu pulang pergi. Ping adalah perintah TCP/IP utama yang digunakan untuk memecahkan masalah konektivitas, jangkauan, dan resolusi nama.
ping
Simple sederhana perintah hanya mengambil satu parameter:Nama host atau alamat IP host yang ingin Anda verifikasi. ping
sederhana contohnya seperti di bawah ini:
[root@server ~]# ping google.com
PING google.com (216.58.206.174) 56(84) bytes of data.
64 bytes from sof02s27-in-f14.1e100.net (216.58.206.174): icmp_seq=1 ttl=56 time=10.7 ms
64 bytes from sof02s27-in-f14.1e100.net (216.58.206.174): icmp_seq=2 ttl=56 time=10.2 ms
64 bytes from sof02s27-in-f14.1e100.net (216.58.206.174): icmp_seq=3 ttl=56 time=10.4 ms
64 bytes from sof02s27-in-f14.1e100.net (216.58.206.174): icmp_seq=4 ttl=56 time=10.4 ms
64 bytes from sof02s27-in-f14.1e100.net (216.58.206.174): icmp_seq=5 ttl=56 time=17.3 ms
^C
--- google.com ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4005ms
rtt min/avg/max/mdev = 10.219/11.844/17.381/2.773 ms
Anda harus menghentikan ping
perintah dengan menekan CTRL+C . Jika tidak, itu akan ping
sampai Anda menghentikannya. Setelah setiap ping
perintah, itu akan menampilkan laporan ringkasan dengan informasi berikut:
- Min:Waktu minimum yang diperlukan untuk mendapatkan respons dari host yang telah di-ping dari pihak Anda.
- Rata-rata:Waktu rata-rata yang diperlukan untuk mendapatkan respons dari host yang telah di-ping dari pihak Anda.
- Maks:Waktu maksimum yang diperlukan untuk mendapatkan respons dari host yang telah di-ping dari pihak Anda.
Juga, Anda akan melihat TTL, yang merupakan singkatan dari Time To Live. Ping menggunakan nilai TTL numerik untuk mencoba mencapai komputer host tertentu melalui jalur rute. Ini juga dikenal sebagai batas hop.
Biasanya, saat Anda menjalankan ping
simple sederhana perintah tanpa melewati parameter tambahan apa pun, Linux akan ping
yang menjadi tuan rumah untuk waktu yang tak terbatas. Jika Anda ingin ping
host sepuluh kali, gunakan perintah berikut:
[root@server ~]# ping -c 10 google.com
Gunakan opsi -q
untuk hanya melihat ping
ringkasan statistik:
[root@server ~]# ping -c 10 google.com
Pada sistem dengan banyak antarmuka, Anda dapat menentukan antarmuka untuk ping
perintah untuk digunakan. Jika sistem memiliki keduanya eth0 dan eth1 dan saya ingin ping
menggunakan eth0 :
[root@server ~]# ping -I eth0 google.com
Atau gunakan alamat di antarmuka, dengan asumsi antarmuka sebagai 10.233.201.45 sebagai IP:
[root@server ~]# ping -I 10.233.201.45 google.com
Anda juga dapat ping
dan tentukan versi IP sebagai v4 atau v6:
[root@server ~]# ping -4 google.com
[root@server ~]# ping -6 google.com
Saat melakukan ping ke host, Anda akan menemukan keluaran yang berbeda dari ping
hasil, termasuk tiga contoh berikut.
Host Tujuan Tidak Dapat Dijangkau
Alasan terbaik yang mungkin adalah tidak ada rute dari sistem host lokal dan ke host tujuan yang diinginkan, atau router jarak jauh melaporkan bahwa ia tidak memiliki rute ke host tujuan.
Waktu permintaan habis
Hasil ini berarti bahwa tidak ada pesan Echo Reply yang diterima dalam waktu default satu detik atau waktu yang Anda tetapkan saat Anda melakukan ping ke host tersebut. Hal ini dapat disebabkan oleh banyak penyebab yang berbeda; yang paling umum termasuk kemacetan jaringan, kegagalan permintaan ARP, pemfilteran paket/firewall, dll.
Host Tidak Dikenal/Permintaan Ping Tidak Dapat Menemukan Host
Mungkin Anda salah mengeja nama host atau host tidak ada sama sekali di jaringan.
Anda harus memiliki 0% packet loss untuk setiap ping
menghasilkan latensi yang baik atau waktu respons yang lebih rendah. Bergantung pada media transmisi (UTP, kabel serat optik, Wi-Fi) yang Anda gunakan, latensi Anda akan berbeda.
[ Lembar contekan gratis:Dapatkan daftar utilitas dan perintah Linux untuk mengelola server dan jaringan. ]
Menantikan
Anda harus menambahkan perintah dan contoh ini ke dalam rutinitas saat mengonfigurasi dan memecahkan masalah jaringan Anda sendiri. Jika menurut Anda jenis artikel ini bermanfaat, pastikan untuk menghubungi kami dan beri tahu kami. Juga, perhatikan bagian dua dari daftar perintah komunitas kami. Berikutnya adalah 16 perintah umum Linux yang tidak dapat Anda lakukan tanpanya.