Berapa jumlah maksimum IP yang dapat ditetapkan untuk komputer yang diberikan?

13

Saya benar-benar perlu mengetahui hal ini untuk server linux, tetapi karena ini juga berlaku untuk OS klien, saya pikir pertanyaannya harus diajukan di sini daripada kesalahan server.

Jeremy Boyd
sumber

Jawaban:

16

Menurut balasan untuk posting ini ke milis linux-net ,

  • Pada satu titik, kernel Linux memiliki batas 255 alias per perangkat antarmuka fisik.
  • Pada Linux kernel versi 2.2, tidak ada batasan (praktis), dengan tanggapan kedua mengutip pengalaman pribadi dengan telah mengalihkan lebih dari 5.000 alamat ke kartu ethernet tunggal.

Tentu saja, mengikat sejumlah besar alias ke satu perangkat akan memaksakan persyaratan memori dan mungkin memiliki implikasi kinerja, sehingga sangat mungkin bahwa perangkat keras Anda dapat membatasi jumlah alias yang dapat Anda tambahkan, bahkan jika kernel itu sendiri tidak.

Dave Sherohman
sumber
Tidak perlu membuat alias untuk ini; ip addr adddapat mengikat alamat ke satu perangkat.
Ignacio Vazquez-Abrams
3
Ya, dan ia melakukannya dengan memasukkan alamat tambahan ke perangkat yang sama. Apakah alias bernama ( eth0:0) atau tidak, itu masih alias. Memang, penulis ip(8)halaman manual memilih untuk tidak menggunakan istilah "alias" karena memperlakukan semua alamat sama, hampir seluruh dunia sepakat bahwa menetapkan beberapa alamat ke antarmuka yang sama disebut "IP aliasing".
Dave Sherohman
1
Pada titik tertentu saya memiliki kebutuhan untuk menetapkan banyak alamat IPv6 ke satu host, dan begitu saya mencapai sekitar 4000 alamat tetangga ditemukan. Jumlah persis alamat yang diperlukan untuk memecahkan penemuan tetangga sedikit berbeda di antara eksperimen, tetapi selalu hampir mendekati 4000.
kasperd
6

Lebih dari yang mungkin Anda butuhkan. Gunakan ip addr adduntuk menambahkan alamat ke antarmuka.

Ignacio Vazquez-Abrams
sumber
3

Maksimumnya adalah 4.294.967.294 alamat IP (dengan asumsi Anda berbicara tentang IPV4, Anda memiliki cukup RAM, dan kami mengambil satu untuk alamat broadcast dan satu untuk alamat jaringan).

Mike Scott
sumber
0

Kernel linux memiliki fitur yang disebut AnyIP yang memungkinkan Anda untuk menjawab blok yang berdekatan dari alamat IPv4 atau IPv6 melalui antarmuka loopback linux Anda dengan biaya yang sangat kecil dalam DRAM / CPU.

Misalnya, anggap saya ingin mesin linux saya menjawab untuk alamat apa pun di 10.7.0.0/16:

  • Pada sistem linux tambahkan rute lokal: ip -4 route add local 10.7.0.0/16 dev lo
  • Minta teknisi jaringan Anda untuk mengiklankan rute untuk 10.7.0.0/16 yang menunjuk ke alamat eth0 dari mesin yang Anda gunakan.

Selamat, Anda sekarang menjawab untuk sejumlah besar alamat (lebih dari 65.000 dalam contoh ini), dan konsumsi RAM Anda praktis bukan apa-apa dari latihan ini. Dalam hal skalabilitas, solusi ini jauh lebih baik daripada menambahkan alias antarmuka tunggal pada eth0 untuk semua IP yang ingin Anda jawab.

Tidak ada batasan untuk berapa banyak alamat yang dapat Anda jawab seperti ini.

Mike Pennington
sumber