GNU/Linux >> Belajar Linux >  >> Linux

Perbedaan antara perintah 'ifconfig' dan 'ip'

ifconfig adalah dari net-tools , yang belum dapat sepenuhnya mengikuti tumpukan jaringan Linux untuk waktu yang lama. Itu juga masih menggunakan ioctl untuk konfigurasi jaringan, yang merupakan cara berinteraksi yang jelek dan kurang kuat dengan kernel.

Banyak perubahan dalam kode jaringan Linux, dan banyak fitur baru yang tidak dapat diakses menggunakan net-tools :perutean multipath, perutean kebijakan (lihat RPDB). route memungkinkan Anda melakukan hal bodoh seperti menambahkan beberapa rute ke tujuan yang sama, dengan metrik yang sama.

Selain itu:

  • ifconfig tidak melaporkan alamat perangkat keras yang sesuai untuk beberapa perangkat.
  • Anda tidak dapat mengonfigurasi ipip , sit , gre , l2tp , dll. terowongan statis dalam kernel.
  • Anda tidak dapat membuat tun atau tap perangkat.
  • Cara menambahkan banyak alamat ke antarmuka tertentu juga memiliki semantik yang buruk.
  • Anda juga tidak dapat mengonfigurasi sistem kontrol lalu lintas Linux menggunakan net-tools baik.

Lihat juga ifconfig menyebalkan.

EDIT :Menghapus pernyataan tentang net-tools pengembangan berhenti sehingga sekarang saya lupa dari mana saya mendapatkan posting ini. net-tools ' telah dikerjakan sejak iproute2 dirilis, meskipun sebagian besar berupa perbaikan bug dan peningkatan kecil serta fitur, seperti internasionalisasi.


ifconfig adalah perintah tradisional untuk menampilkan informasi tentang antarmuka jaringan dan mengubah beberapa pengaturan. Secara khusus, ini dapat membawa antarmuka ke atas dan ke bawah. Itu ada di sebagian besar varian unix.

Di Linux, ifconfig perintah belum berkembang dalam waktu yang lama. Itu masih baik-baik saja untuk apa yang dilakukannya. Jika Anda menggunakan ifconfig untuk sesuatu, tidak ada alasan untuk berhenti.

Linux juga menyediakan ip perintah dari rangkaian alat iproute2. ip perintah menggabungkan beberapa perintah klasik dan lainnya, termasuk ifconfig , route dan arp . ip dapat melakukan lebih dari ifconfig . Di sisi lain, ip tidak selalu ada, terutama pada sistem tersemat (dan tidak pernah pada varian unix selain Linux).

Parsing ifconfig keluarannya agak menyebalkan. Parsing ip keluarannya agak menyebalkan. Tidak ada pemenang di sana.


Hanya untuk menambahkan sedikit jawaban oleh pilona. Sekitar tahun 2005 mekanisme baru untuk mengontrol tumpukan jaringan diperkenalkan - soket netlink.

Untuk mengonfigurasi antarmuka jaringan iproute2 memanfaatkan mekanisme soket netlink full-duplex, sedangkan ifconfig bergantung pada ioctl panggilan sistem. Berikut adalah 2 makalah utama tentang motivasi di balik netlink dan penggunaan rtnetlink.


Linux
  1. Perintah Linux:pekerjaan, bg, dan fg

  2. Perbedaan Antara Perintah Menghentikan dan Mematikan?

  3. Perbedaan Antara [[ $a ==Z* ]] Dan [ $a ==Z* ]?

  1. Linux – Perbedaan Antara Ruang Pengguna dan Ruang Kernel?

  2. Perbedaan antara jalur absolut dan relatif di Linux

  3. Apa perbedaan antara 'temukan' dan 'temukan' di Linux?

  1. Pelajari Perbedaan Antara Perintah "su" dan "su -" di Linux

  2. Perbedaan antara perintah dalam skrip bash dan perintah di terminal

  3. perbedaan salin konten folder antara /. dan /* di linux