Saya memiliki server Linux (Rasperry Pi menggunakan Raspbian sebagai OS) yang seharusnya hanya menggunakan IP statis.
Namun saya perhatikan bahwa ia juga telah mendapatkan IP dari server DHCP (IP yang diberikan oleh DHCP adalah 192.168.111.2
). Menurut pengaturan jaringan server hanya menggunakan IP statis ( 192.168.111.100
).
Isi dari /etc/network/interfaces
:
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.111.100
netmask 255.255.255.0
gateway 192.168.111.1
dns-nameservers ip1 ip2
Meskipun menggunakan konfigurasi statis saya dapat SSH ke perangkat juga menggunakan IP yang diberikan oleh DHCP. Tampaknya ntpd
juga menggunakan IP yang salah dan juga yang benar.
Output dari Netstat:
udp 0 0 192.168.111.2:123 0.0.0.0:* 2774/ntpd
udp 0 0 192.168.111.100:123 0.0.0.0:* 2774/ntpd
Menurut ifconfig
IP 192.168.111.2
tidak digunakan:
eth0 Link encap:Ethernet HWaddr b8:27:eb:be:18:1c
inet addr:192.168.111.100 Bcast:192.168.111.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:138099 errors:0 dropped:0 overruns:0 frame:0
TX packets:81146 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:95954711 (91.5 MiB) TX bytes:27076870 (25.8 MiB)
ps -ef | grep dhcp
menunjukkan bahwa saya memiliki daemon DHCP yang sedang berjalan:
root 2000 1 0 Oct07 ? 00:00:06 /sbin/dhcpcd
Bagaimana cara menonaktifkan DHCP
daemon dari memulai dan memastikan bahwa server saya hanya menggunakan statis?
sumber
ifconfig
dan digunakan secara teratur. Ini suatu hari nanti akan digantikan olehip
tetapi jujur, itu tidak ada konsekuensinya untuk merengek seseorang tentang yang "lebih baik" karena ini bukan kontes kencing.ifconfig
menyediakan lebih dari cukup detail untuk debugging hal-hal seperti ini.Jawaban:
Skenario ini terdengar sangat aneh karena pengaturan Anda harusnya berfungsi seperti yang Anda jelaskan — dan berharap agar berhasil — jika ada set IP statis di dalamnya
/etc/network/interfaces
. Yang mengatakan, diskusi ini di situs resmi Raspberry Pi berfokus pada masalah dengan pengguna "rpdom" yang menyatakan ini pada posting bertanggal "Kamis 28 Mei 2015 6:21 pagi":Lebih dalam di pengguna thread "KLL" menyarankan posting lain berikut dalam tanggapan mereka bertanggal "Senin 10 Agustus 2015 12:59 pm." Menurut "knute":
Jadi idenya adalah bahwa
dhcpcd5
perilaku telah berubah di salah satu peningkatan. Dan saran untuk mengatasi masalah ini adalah menghapus perubahan apa pun dari/etc/network/interfaces
dan alih-alih menyesuaikan pengaturan/etc/dhcpcd.conf
untuk mendapatkan alamat IP statis; contoh konfigurasi di bawah ini:Info lebih lanjut tentang konten
dhcpcd.conf
dapat ditemukan di halaman manual untuk itu .Yang mengatakan, ide lain adalah untuk mempertahankan pengaturan yang Anda miliki
/etc/network/interfaces
tetapi kemudian edit/etc/dhcpcd.conf
untuk menambahkan barisdenyinterfaces eth0
untuk memberitahu daemon DHCP untuk sepenuhnya diabaikaneth0
. Salah satu solusi harus bekerja, tetapi satu solusi mungkin merupakan solusi yang lebih disukai tergantung pada kebutuhan / persyaratan jaringan Anda secara keseluruhan.sumber
/etc/network/interfaces
tidak pernah berubah menjadimanual
seperti itu dalam kasus forum Raspberry Pi. Solusi yang disarankan bekerja untuk saya juga.apa yang berhasil bagi saya adalah menggunakan / etc / network / interfaces seperti pada pertanyaan awal dan hanya menghapus klien dhcp:
sumber
Saya harus mengatakan bahwa sayangnya tidak ada solusi yang diusulkan di sini yang berfungsi untuk saya. Tapi setelah pertempuran panjang dengan DHCP, saya akhirnya bisa menyelesaikan masalah:
perubahan:
untuk:
semoga ini membantu.
sumber
Cara yang lebih baik untuk menonaktifkan layanan apa pun seperti dhcpcd adalah menggunakan fungsi manajemen sistem. Anda harus memulai ulang untuk menjalankannya - kecuali Anda menghentikan layanan ini juga.
Untuk Jessie (yang menggunakan
systemd
manajemen):Dan untuk Wheezy (
System-V
manajemen) yang lebih tua :Tetapi jika Anda menonaktifkannya maka Anda perlu memastikan Anda memiliki konfigurasi ip statis
/etc/network/interfaces
jika tidak antarmuka Anda tidak akan mendapatkan alamat IP.sumber
Berikut ringkasan dari apa yang perlu saya lakukan untuk Raspbian Jessie 2017-01-11:
Edit / etc / network / interfaces dan tambahkan bait alamat statis, hapus referensi lain ke antarmuka statis (eth0 dalam kasus ini). Baris otomatis penting jika tidak, antarmuka tidak akan mulai saat boot:
Selanjutnya nonaktifkan dhcpcd dan aktifkan jaringan standar:
systemctl disable dhcpcd.service
systemctl enable networking
Raspbian Jessie pada rilis 2017-01-11 sepertinya tidak menggunakan jaringan systemd
sumber
Mencoba beberapa hal dan menemukannya
ditemukan:
Saya baru saja menonaktifkan
dhcpcd5
dan memperbaikinya menggunakan:melakukan reboot dan semuanya keren
sumber