Socket
dnsmasq:未能為埠 53 創建偵聽套接字:地址已在使用中
完成設置 dnsmasq 時出現此錯誤。
ashokkrishna@krishna:~$ sudo dnsmasq dnsmasq: failed to create listening socket for port 53: Address already in use ashokkrishna@krishna:~$ netstat -lpn | grep :53 (Not all processes could be identified, non-owned process info will not be shown, you would have to be root to see it all.) tcp 0 0 0.0.0.0:53 0.0.0.0:* LISTEN - tcp6 0 0 :::53 :::* LISTEN - tcp6 0 0 :::53755 :::* LISTEN - udp 0 0 0.0.0.0:53 0.0.0.0:* - udp 0 0 0.0.0.0:5353 0.0.0.0:* - udp6 0 0 :::53 :::* - udp6 0 0 :::5353 :::* -
那麼如何解決這個問題或如何停止這些套接字。
你可以這樣做:
netstat -tupln
你會得到這樣的結果:
tcp 0 0 :::80 :::* LISTEN 713/httpd
獲取偵聽埠 53 的程序的 pid 並使用此命令將其殺死
kill -9 pid
我只是花了幾個小時試圖在沒有任何重大系統修改的情況下以合理的方式解決這個問題。
停止 dnsmasq 自動啟動。
servicectl disable dnsmasq
創建文件
/etc/rc.local
或/etc/rc.d/rc.local
取決於發行版。設置燙髮
chmod +x /etc/rc.local
編輯文件:
#!/bin/bash service systemd-resolved stop service dnsmasq start
至少在 Mint 上,只需停止 systemd-resolved 然後在完全啟動後啟動 dnsmasq 就可以了。我不能在其他發行版上發言。