GNU/Linux >> Belajar Linux >  >> Linux

Jaringan Linux - Masalah kecil yang aneh dengan DNS, DHCP

Apakah Anda tahu bagaimana Anda tahu Anda memiliki masalah Linux yang lucu? Ketika Anda membutuhkan lebih banyak waktu untuk memikirkan judul yang cocok untuk artikel daripada debugging yang sebenarnya. Karena saya mengalami masalah terkait jaringan yang agak aneh, dan saya menghabiskan beberapa saat mencoba mencari tahu apa penyebabnya. Saya memang menyelesaikannya, dan saya membagikannya sekarang.

Intinya, inilah yang terjadi. Saya menemukan diri saya menguji beberapa router baru. Dalam instance neon KDE saya, saya terhubung ke titik akses nirkabel baru, dan mencoba menjelajah. Tidak ada apa-apa. Saya mencoba dengan kabel kabel, dan semuanya baik-baik saja. Kemudian, saya mem-boot ke instance Linux yang berbeda pada mesin delapan-boot ini, dan konektivitas Nirkabel berfungsi tanpa masalah. Kedua sistem berbasis Ubuntu, keduanya menggunakan baseline 18,04. Nah, saatnya mencari tahu mengapa nirkabel saya tidak berfungsi di neon.

Masalah lebih detail

Untuk mendapatkan pemahaman yang lebih baik tentang masalah ini, saya mencoba melakukan beberapa ping dasar. Ini akan memberi Anda indikasi yang baik apakah Anda benar-benar dapat menjangkau host jarak jauh mana pun, plus memberi Anda firasat pemahaman jika DNS Anda diatur dengan benar. Seketika, saya melihat masalah:

Dari 192.168.2.107 (192.168.2.107) icmp_seq=1 Host Tujuan Tidak Dapat Dijangkau
Dari 192.168.2.107 (192.168.2.107) icmp_seq=2 Host Tujuan Tidak Dapat Dijangkau
Dari 192.168.2.107 (192.168.2.107) icmp_seq=3 Host Tujuan Tidak Terjangkau

Mencoba melakukan ping ke alamat APAPUN (katakanlah dedoimedo.com) akan menghasilkan 192.168.2.107. Yang membuatnya lebih buruk adalah bahwa jangkauan titik akses adalah 192.168.8.X. Jadi ada sesuatu yang dikodekan ke kisaran internal yang berbeda ini, dan mengacaukan Internetz saya. Saya dapat mengonfirmasi ini dengan memeriksa tabel perutean:

route
Tabel perutean IP Kernel
Gerbang Tujuan Genmask Flags Metric Ref Use Iface
default 192.168.2.1 0.0.0.0 UG 303 0 0 wlp2s0
link-local 0.0.0.0 255.255.0.0 U 1000 0 0 wlp2s0
192.168.2.0 0.0.0.0 255.255.255.0 U 303 0 0 wlp2s0
192.168.8.0 0.0.0.0 255.255.255.0 U 600 0 0 wlp2s0

Untuk beberapa alasan buruk, setiap kali saya terhubung ke jaringan 192.168.8.0, jaringan 192.168.2.0 juga akan ditambahkan - dan ditetapkan sebagai gateway default, yang menjelaskan mengapa tidak ada konektivitas. Tapi ini hanya terjadi dengan adaptor Nirkabel dan bukan yang berkabel. Petunjuk, di sana. Tapi pertama-tama, mari kita hilangkan beberapa opsi lain.

Resolusi sistem

Pada titik ini, atau lebih tepatnya, tepat sebelum titik ini, saya cenderung menyalahkan systemd. Tapi ternyata, tidak ada yang salah dengan itu. Sekarang, ada / ada bug di dalamnya, itulah sebabnya muncul cukup tinggi jika Anda mencari masalah konektivitas di Linux. Untuk memastikan bahwa itu bukan pelakunya, saya menonaktifkannya:

sudo systemctl nonaktifkan systemd-resolved
sudo systemctl stop systemd-resolved

Saya juga menghapus symlink /etc/resolv.conf, dan mengedit konfigurasi yang dikelola jaringan:

/etc/NetworkManager/NetworkManager.conf

Di bagian [utama], saya menambahkan:

dns=default

Tidak ada perbedaan sejauh ini. Kita perlu untuk melanjutkan.

Manajer Jaringan

Penjahat lain yang mungkin adalah Manajer Jaringan. Memang, untuk memverifikasi itu tidak melakukan sesuatu yang aneh, saya menghapus semua konfigurasi Nirkabel yang disimpan, saya menghapus file konfigurasinya, mem-boot ulang, dan memulai yang baru. Ini juga tidak ada bedanya. Pelaku berikutnya.

Solusi

Kita dapat melihat bahwa kita tidak dapat menyalahkan DNS atau Manajer Jaringan. Kita juga dapat melihat bahwa gateway yang salah dikonfigurasi setiap kali saya terhubung ke jaringan non-192.168.2.0. Ini kemungkinan besar menunjukkan sesuatu dalam konfigurasi DHCP - penetapan alamat IP otomatis (statis). Memang, mungkin ada aturan statis di suatu tempat? Lihatlah, ada! Di bawah /etc/dhcpcd.conf, saya memiliki yang berikut:

...
slaac private
interface wlp2s0
static ip_address=192.168.2.107/24
static routers=192.168.2.1
static domain_name_servers=127.0.0.1
...

Sesuatu - dan saya menggunakan frasa secara samar-samar - telah mengonfigurasi alamat IP dan router statis, oleh karena itu masalahnya. Dan kemudian, saya bisa mengingat apa ini sesuatu. Saya telah menguji Pi-Hole pada kotak ini beberapa waktu lalu. Dan setelah dihapus, ternyata konfigurasinya tidak dibersihkan. Semua bagian yang berbeda telah hilang, tetapi tidak konfigurasi DHCP. Bukan masalah ketika Anda menggunakan jaringan yang cocok dengan perutean statis, tetapi masalah besar ketika Anda mencoba rentang yang berbeda. Segera setelah saya menghapus dua entri untuk antarmuka nirkabel, semuanya baik-baik saja! Masalah teratasi.

Kesimpulan

Sangat mungkin Anda tidak akan pernah menemui masalah seperti ini. Tetapi jika Anda melakukannya, jangan langsung mengambil kesimpulan, dan Anda harus bekerja dengan hati-hati, secara metodis. Saya harus mengakui bahwa saya langsung mencurigai systemd, tetapi kemudian saya perlahan-lahan memeriksa berbagai komponen di tumpukan jaringan, sampai penjahat itu diisolasi. Ternyata, perangkat lunak yang dihapus telah meninggalkan perubahan konfigurasi pada sistem, menyebabkan masalah. Lebih buruk lagi, ini terjadi berbulan-bulan kemudian, jadi tidak selalu sepele menghubungkan keduanya.

Mudah-mudahan, Anda telah memperoleh beberapa wawasan tentang cara mengatasi masalah jaringan. Mulai dari yang sederhana, periksa konektivitas dasar, coba hubungkan informasi, dan kemudian selesaikan penyebab utamanya. Di sini, saya memiliki Internet, tetapi karena rute yang salah dikonfigurasi, saya tidak dapat benar-benar membuka situs web yang tepat - atau menyelesaikan alamat dengan benar. Ini dapat membuat Anda keluar jalur, tetapi kemudian, saya menghilangkan systemd dari persamaan, menemukan bahwa bukan manajer jaringan yang melakukan kesalahan, dan akhirnya dikategorikan pada penetapan IP/rute statis DHCP. Nah, jika ini membantu, belikan saya minuman virtual di suatu tempat kapan-kapan. Dilakukan. AK.


Linux
  1. Mengalami Masalah Nyata Dengan Jaringan Systemctl?

  2. Caching DNS di linux

  3. Cari tahu server DNS untuk koneksi DHCP di Linux

  1. Cara memperbaiki video robek di Linux (dengan grafis Intel)

  2. Bagaimana cara mendaftarkan server Linux dengan server DNS Windows

  3. Penerusan DNS bersyarat dengan nama di Linux

  1. Instal Linux dengan LVM

  2. Ganti du dengan debu di Linux

  3. Daftarkan catatan A untuk kotak Linux saya di server DNS/DHCP Windows 2008 saya