Baik DHCP dan alamat IP statis secara bersamaan pada satu antarmuka

16

Kita dapat menggunakan beberapa alamat IP untuk satu antarmuka di Linux (eg. eth0:0, eth0:1). Tetapi bisakah kita menggunakan DHCP dan IP statis secara bersamaan? eth0:1harus memiliki alamat IP statis dan eth0:0harus dikonfigurasi menggunakan DHCP.

Bagaimana kita bisa mencapai keduanya?

shantanu
sumber
Apakah pertanyaan ini tentang mengkonfigurasi NetworkManager?
madneon

Jawaban:

13

Ya, ini bisa dilakukan. Namun, Anda biasanya menggunakan eth0 dan eth0: 0 untuk ini alih-alih eth0: 0 dan eth0: 1. Anda dapat mengatur file / etc / network / interfaces Anda seperti ini:

auto lo eth0 eth0:0
iface lo inet loopback

iface eth0 inet dhcp

iface eth0:0 inet static
    address ...
    netmask ...

Anda mungkin tidak ingin mengatur gateway pada antarmuka eth0: 0 karena itu bisa bertentangan dengan pengaturan gateway yang Anda dapatkan dari DHCP. Jika Anda memasukkan pengaturan manual di / etc / network / interfaces Anda ingin memastikan network-manager tidak mencoba untuk mengelola pengaturan Anda. Ini dibahas di sini .

jkt123
sumber
9

Setelah beberapa pencarian intensif untuk jawaban untuk masalah yang sama, saya menemukan solusi yang memungkinkan Network Manager terus mengelola koneksi Anda. Pertama, buat koneksi DHCP secara normal di Network Manager menggunakan Edit Connections> Add. Ini akan membuat file yang terletak di / etc / NetworkManager / system-koneksi /. Buka file ini di editor teks Anda dengan izin Pengguna Super. Contoh: sudo nano / etc / NetworkManager / system-koneksi / DHCPEthernet

Kode akan terlihat seperti ini:

[802-3-ethernet]
duplex=full
mac-address=00:0E:C6:88:31:43

[connection]
id=DHCPEthernet
uuid=26af83f1-c48c-4454-9038-bbb4bec3e3a3
type=802-3-ethernet
timestamp=1405008541

[ipv6]
method=auto

[ipv4]
method=auto

Tambahkan baris di bawah bagian ipv4 untuk alamat ip statis yang ingin Anda tambahkan. Saya menggunakan 192.168.10.1 tanpa gateway untuk contoh ini

address1=192.168.10.1/24,0.0.0.0

Simpan file, dan gunakan Network Manager untuk memutuskan dan kemudian menghubungkan kembali ke jaringan. Ping akan mengkonfirmasi kedua alamat IP berfungsi dengan baik. Output dari ip addr mengkonfirmasi kesuksesan.

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 14:10:9f:d7:22:0b brd ff:ff:ff:ff:ff:ff
    inet 172.20.1.71/24 brd 172.20.1.255 scope global wlan0
       valid_lft forever preferred_lft forever
    inet6 fe80::1610:9fff:fed7:220b/64 scope link 
       valid_lft forever preferred_lft forever
3: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0e:c6:88:31:43 brd ff:ff:ff:ff:ff:ff
    inet 172.20.1.60/24 brd 172.20.1.255 scope global eth2
       valid_lft forever preferred_lft forever
    inet 192.168.10.1/24 brd 192.168.10.255 scope global eth2
       valid_lft forever preferred_lft forever
    inet6 fe80::20e:c6ff:fe88:3143/64 scope link 
       valid_lft forever preferred_lft forever
Andrew Vian
sumber
address1pengaturan yang ditemukan di sini sebenarnya adalah ipv4.addressespengaturan NetworkManager jika Anda menggunakan API atau nmcli. Dalam hal ini, Anda juga harus tetap ipv4.methoddisetel ke "otomatis".
Dave
Setelah saya membuat koneksi secara normal, saya masih tidak memiliki file di direktori / etc / NetworkManager / system-connection / saya. Apakah mereka disimpan di tempat lain? Mungkin hal SELinux?
Steve Jorgensen
2

Saya memeriksa sekitar sedikit dan menemukan, bahwa saat ini dimungkinkan untuk membuat konfigurasi ini menggunakan nmclialat. Bahkan, ini memungkinkan untuk kontrol penuh dari NetworkManager. Halaman manual untuk nmcli sangat menyeluruh dan sangat mudah dimengerti. Lihat man nmclidanman nm-settings .

Untuk mengatur konfigurasi dalam pertanyaan ini, cara termudah adalah mengedit profil koneksi Anda saat ini. Cari tahu nama profil dari alat GUI NetworkManager Anda dan edit menggunakan editor CLI (di sini namanyaEthernet connection ):

$ sudo nmcli c sunting 'koneksi Ethernet'

=== | editor koneksi interaktif nmcli | ===

Mengedit koneksi '802-3-ethernet' yang ada: 'Koneksi Ethernet 1'

Ketik 'bantuan' atau '?' untuk perintah yang tersedia.
Ketik 'uraikan [.]' Untuk deskripsi properti terperinci.

Anda dapat mengedit pengaturan berikut: koneksi, 802-3-ethernet (ethernet), 802-1x, dcb, ipv4, ipv6
nmcli> goto ipv4
Anda dapat mengedit properti berikut: metode, dns, pencarian dns, opsi dns, prioritas dns, alamat, gateway, rute, rute-metrik, rute-mengabaikan-rute-otomatis, abaikan-auto-dns, nama host-dhcp, dhcp-hostname, dhcp -mengirim nama host, tidak pernah-default, mungkin-gagal, ayah-timeout, dhcp-timeout, dhcp-client-id, dhcp-fqdn
nmcli ipv4> set ipv4.addresses {your_address_here} / {your_network_prefix_here} 
Anda juga ingin mengatur 'ipv4.method' to 'manual'? [ya]: tidak ada 
nmcli ipv4> simpan
Koneksi 'Koneksi Ethernet' (87fa8e41-7fe3-435a-a2f2-29a9c8084d2d) berhasil diperbarui.
nmcli ipv4> keluar

Bagian tebal adalah input Anda, ganti hal-hal dalam kurung kurawal dengan pengaturan Anda. Menjawab nopertanyaan tentang ipv4.methodmempertahankan konfigurasi DHCP. Kata penutup Anda perlu menonaktifkan dan mengaktifkan kembali konfigurasi, yang dapat dilakukan menggunakan GUI-tools atau nmcli.

Jika Anda mau, Anda juga dapat membuat koneksi baru dari baris perintah:

sudo nmcli -p connection add type ethernet ifname {your_interface_name} con-name MyConnection -- ipv4.addresses {your_address}/{your_prefix_length} ipv4.method auto

Sekali lagi, ganti hal-hal di kurung kurawal dengan pengaturan Anda.

Terakhir, jika Anda masih ingin mengedit file konfigurasi, ingat untuk memuat ulang file setelah mengedit:

sudo nmcli connection reload

Perhatikan, bahwa konfigurasi yang dibuat dengan cara ini cenderung membingungkan alat GUI. Paling-paling, mereka tidak akan menunjukkan alamat statis.

Ville Koivunen
sumber
0

Debian Buster / 10 NetworkManager nm-connection-editorsekarang dapat melakukan ini dari antarmuka pengguna grafis.

Edit koneksi, buka tab "Pengaturan IPv4", lalu:

  1. Setel Metode ke "Otomatis (DHCP)".
  2. Tambahkan "Alamat statis tambahan" di bawah.

Ini akan menulis pengaturan berikut di /etc/NetworkManager/system-connections/connection.nmconnection:

[ipv4]
address1=10.0.0.1/24
method=auto
pengguna1338062
sumber