GNU/Linux >> Belajar Linux >  >> Linux

Mendapatkan 2 alamat IP pada satu kartu jaringan, menggunakan DHCP

Karena balasan DHCP didasarkan pada alamat MAC dari antarmuka yang meminta, dengan satu antarmuka fisik, jawabannya adalah "Anda tidak bisa". Satu-satunya cara untuk melakukannya adalah dengan skrip.

Mungkin sesuatu seperti (dengan subinterface yang ditentukan pada primer):

  1. Antarmuka utama mengeluarkan DHCP dan mendapatkan alamat IP
  2. macchanger mengubah alamat MAC antarmuka
  3. Sub antarmuka mengeluarkan DHCP dan mendapatkan alamat IP
  4. Kembalikan alamat mac dengan macchanger

Bunuh klien dhcp, agar tidak berjalan otomatis nanti. Tentukan waktu sewa alamat IP yang Anda berikan, dan jadwalkan skrip ini untuk dijalankan kembali sebelum masa sewa berakhir.

Perbarui

Untuk ini, Anda perlu menginstal iproute2. Perintah berikut menambahkan antarmuka virtual yang terikat ke antarmuka eth0 yang sudah ada:

ip link add link eth0 address 00:11:22:33:44:55 virtual0 type macvlan

Ganti nama mac dan "virtual0" dari antarmuka ke apa pun yang Anda suka. Aktifkan:

ip link set virtual0 up

Kemudian konfigurasikan menggunakan dhcpd atau dhclient atau ifconfig sesuai kebutuhan. Saya telah menguji ini pada pemerasan Debian - distro Anda mungkin tidak memiliki semua yang diperlukan diaktifkan di kernel (khususnya macvlan).


Seperti yang disarankan @JesseChisholm, jauh lebih mudah untuk menanyakan hal yang benar ke server DHCP daripada membuat penyiapan jaringan yang rumit.

Untuk OpenWRT saya cukup menjalankan:

 # udhcpc -i eth0:1 -x 0x3d:0100BEEFC0FFEE

Yang menghasilkan dua alamat ip dari server dhcp yang sama.

0x36 adalah opsi 61 yang merupakan opsi id klien. Setelah :ada opsi hex byte. Ini berasal dari opsi bantuan udhcpc:

 # udhcp --help
 BusyBox v1.22.1 (2014-10-08 16:34:50 HKT) multi-call binary.

 Usage: udhcpc [-fbqRB] [-t N] [-T SEC] [-A SEC/-n]
 [-i IFACE] [-s PROG] [-p PIDFILE]
 [-oC] [-r IP] [-V VENDOR] [-F NAME] [-x OPT:VAL]... [-O OPT]...

 ...
 -x OPT:VAL     Include option OPT in sent packets (cumulative)
                Examples of string, numeric, and hex byte opts:
                -x hostname:bbox - option 12
                -x lease:3600 - option 51 (lease time)
                -x 0x3d:0100BEEFC0FFEE - option 61 (client id)

Linux
  1. Cara Menetapkan Beberapa Alamat IP ke Antarmuka Jaringan Tunggal di CentOS 8

  2. Linux – Menguji Stres Kartu Sd Menggunakan Linux?

  3. Berikan Dua Argumen Untuk Satu Opsi Menggunakan Getopts?

  1. Tambahkan antarmuka Jaringan Cloud ke Server Cloud

  2. Ifconfig:7 Contoh Konfigurasi Antarmuka Jaringan

  3. CentOS / RHEL 6:Cara menambah/menghapus alamat IP tambahan ke antarmuka jaringan

  1. Dapatkan alamat antarmuka jaringan lokal hanya menggunakan proc?

  2. Tentukan apakah antarmuka jaringan nirkabel atau kabel

  3. Buat antarmuka jaringan virtual menggunakan perintah iproute2 ip link dengan alamat MAC palsu