GNU/Linux >> Belajar Linux >  >> Ubuntu

Ubuntu:cara membagikan port 53 yang digunakan oleh systemd-resolved

Ubuntu memiliki sistem mendengarkan yang diselesaikan pada port 53 secara default. Jika Anda ingin menjalankan server DNS Anda sendiri, Anda tidak bisa karena port 53 sudah digunakan, sehingga Anda mendapatkan pesan kesalahan seperti ini:"listen tcp 0.0.0.0:53:bind:address sudah digunakan".

Artikel ini menjelaskan cara mencegah systemd-resolved menggunakan port 53 di Ubuntu. Instruksi telah diuji pada Ubuntu 20.04, tetapi juga harus berfungsi pada versi Ubuntu lainnya, mis. Ubuntu 18.04, Ubuntu 20.10 yang akan datang, serta distribusi Linux berbasis Ubuntu seperti Pop! _OS, Zorin OS, Elementary OS, Linux Mint, dan segera. Pada dasarnya ini bekerja pada sistem apa pun dengan systemd versi 232 atau yang lebih baru.

Untuk melihat apakah port 53 digunakan pada sistem Anda, gunakan:

sudo lsof -i :53

Contoh dengan output yang menunjukkan systemd-resolved menggunakan port 53 pada sistem standar Ubuntu 20.04:

$ sudo lsof -i :53
COMMAND   PID            USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
systemd-r 610 systemd-resolve   12u  IPv4  19377      0t0  UDP localhost:domain
systemd-r 610 systemd-resolve   13u  IPv4  19378      0t0  TCP localhost:domain (LISTEN)

Jika Anda tidak mendapatkan output apa pun, berarti port 53 tidak digunakan.

Cara menghentikan systemd-resolved dari menggunakan port 53 di Ubuntu

Perlu dicatat bahwa Anda dapat berbagi port 53 hanya dengan menghapus komentar DNSStubListener dan atur no di /etc/systemd/resolved.conf . Langkah lainnya adalah mengaktifkan server DNS – tanpanya, sistem Anda tidak dapat menyelesaikan nama domain, sehingga Anda tidak dapat mengunjungi situs web di browser web, dll.

1. Untuk mengedit /etc/systemd/resolved.conf buka dengan editor teks (sebagai root), mis. dengan editor teks Nano Console:

sudo nano /etc/systemd/resolved.conf


Dan batalkan komentar (hapus # dari depan) DNS= Baris dan DNSStubListener= Pengelolaan. Selanjutnya, ubah DNS= Nilai dalam file ini ke server DNS yang ingin Anda gunakan (misalnya 127.0.0.1 untuk menggunakan proxy lokal, 1.1.1.1 untuk menggunakan DNS Cloudflare dll) dan juga mengubah DNSStubListener= nilai yes ke no .

Seperti inilah tampilan file setelah Anda melakukan perubahan ini (saya menggunakan 1.1.1.1 sebagai server DNS, DNS Cloudflare):

[Resolve]
DNS=1.1.1.1
#FallbackDNS=
#Domains=
#LLMNR=no
#MulticastDNS=no
#DNSSEC=no
#DNSOverTLS=no
#Cache=no
DNSStubListener=no
#ReadEtcHosts=yes

Untuk menyimpan file menggunakan editor teks nano, tekan Ctrl + x , lalu ketik y dan tekan Enter .

2. Buat tautan simbolis untuk /run/systemd/resolve/resolv.conf dengan /etc/resolv.conf sebagai tujuan:

sudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf

Di sini, -s digunakan untuk membuat tautan simbolis dan bukan tautan keras, dan -f digunakan untuk menghapus file target yang ada (sehingga menghapus /etc/resolv.conf jika tersedia).

3. Nyalakan ulang sistem Anda.

Port 53 sekarang seharusnya bebas di sistem Ubuntu Anda dan Anda seharusnya tidak lagi menerima kesalahan seperti “listen tcp 127.0.0.1:53:bind:address sudah digunakan”.

Anda dapat memeriksa apakah port 53 sedang digunakan atau tidak dengan menjalankan sudo lsof -i :53 – Jika port 53 tidak digunakan, perintah ini seharusnya tidak menampilkan output apa pun.

Anda mungkin menyukai:

  • Cara mengosongkan cache DNS di Linux (untuk systemd-resolved, BIND, Dnsmasq, atau nscd)
  • Cara mengubah alamat MAC di Linux secara permanen

Cara membatalkan perubahan

Apakah Anda ingin membatalkan perubahan yang Anda buat dengan mengikuti petunjuk dalam artikel ini? Inilah yang harus Anda lakukan.

1. Mulai mengedit /etc/systemd/resolved.conf buka dengan editor teks (sebagai root), mis. dengan editor teks Nano Console:

sudo nano /etc/systemd/resolved.conf

Dan beri komentar (tambahkan # di depan baris) DNS= dan DNSStubListener=no lalu simpan filenya. Untuk menyimpan file menggunakan editor teks nano, tekan Ctrl + x , lalu ketik y dan tekan Enter .

2 . Hapus /etc/resolv.conf itu tautan simbolis:

sudo rm /etc/resolv.conf

3 . Nyalakan ulang sistem Anda.


Ubuntu
  1. Cara Meningkatkan ke Ubuntu 20.04

  2. Bagaimana Mengutip Ubuntu Dalam Tesis Akademik??

  3. Cara Membuat Berbagi Samba di Ubuntu 20.04

  1. Cara Menginstal R di Ubuntu 20.04

  2. Cara Meningkatkan Ubuntu Ke 20.10

  3. Cara Meningkatkan Ubuntu Ke 21.10

  1. Cara Meningkatkan Ubuntu Ke 21.04

  2. Cara Meningkatkan ke Ubuntu 21.10

  3. Cara Memasang Windows Share di Ubuntu Linux