Docker build 遇到 Temporary failure resolving DNS 解析問題

Docker build 的時候,遇到一直 DNS 查詢錯誤的問題,錯誤訊息如下:

Err:1 http://ftp.tw.debian.org/debian stretch InRelease
  Temporary failure resolving 'ftp.tw.debian.org'
Reading package lists...
W: Failed to fetch http://ftp.tw.debian.org/debian/dists/stretch/InRelease Temporary failure resolving 'ftp.tw.debian.org'
W: Some index files failed to download. They have been ignored, or old ones used instead.

要怎麼解決呢?

閱讀全文〈Docker build 遇到 Temporary failure resolving DNS 解析問題〉

Apple 與 Cloudflare 打造新 DNS:ODoH 來保護用戶隱私

現在網路上的資料幾乎都走 https 了,不過那些是資料面的,但是自己去看哪些網站,由 DNS 端還是可以洩漏出去(ISP 還是可以看到),於是 AppleCloudflare 打造新的 DNS 標準,來避免 ISP (網際網路服務供應商) 可以記錄看過哪些網站的資訊。

閱讀全文〈Apple 與 Cloudflare 打造新 DNS:ODoH 來保護用戶隱私〉

Linode Email 無法寄送的解法

Linode 於 2019/12/5 以後開得新帳號(原因:CAN-SPAM Act),連到外部 SMTP Port 預設都被擋掉,以至於全部 Connection timed out。

新開機器可以直接 telnet 測試看看:

$ telnet gmail-smtp-in.l.google.com 25
Trying 2404:6800:4008:c03::1b…
Trying 74.125.203.26…
telnet: Unable to connect to remote host: Connection timed out

正常狀況

$ telnet gmail-smtp-in.l.google.com 25
Trying 74.125.203.26…
Connected to gmail-smtp-in.l.google.com.
Escape character is '^]'.
220 mx.google.com ESMTP k2si12268129pld.364 - gsmtp

於 Postfix 的 /var/log/mail.log 會看到下述訊息:

Apr 29 12:47:24 localhost postfix/smtp[18520]: connect to gmail-smtp-in.l.google.com[74.125.203.27]:25: Connection timed out
Apr 29 12:47:24 localhost postfix/smtp[18521]: connect to gmail-smtp-in.l.google.com[108.177.97.27]:25: Connection timed out
Apr 29 12:47:24 localhost postfix/smtp[18523]: connect to gmail-smtp-in.l.google.com[64.233.189.26]:25: Connection timed out
Apr 29 12:47:54 localhost postfix/smtp[18523]: connect to alt1.gmail-smtp-in.l.google.com[108.177.9.27]:25: Connection timed out
Apr 29 12:48:24 localhost postfix/smtp[18523]: connect to alt2.gmail-smtp-in.l.google.com[209.85.234.26]:25: Connection timed out
Apr 29 12:48:54 localhost postfix/smtp[18522]: connect to alt3.gmail-smtp-in.l.google.com[142.250.11.27]:25: Connection timed out Apr 29 12:49:24 localhost postfix/smtp[18520]: connect to alt4.gmail-smtp-in.l.google.com[142.250.12.27]:25: Connection timed out

想要開通 Email 的 SMTP Port 需要做些設定,然後在於後台開 Ticket 申請。

閱讀全文〈Linode Email 無法寄送的解法〉

使用 Cron 埋入後門 來執行 DNS 查詢的攻擊模式

現在入侵機器後,攻擊模式越來越多元了,連要做什麼事情的程式(一般至少會寫要去哪抓程式),都不直接寫在裡面了...

閱讀全文〈使用 Cron 埋入後門 來執行 DNS 查詢的攻擊模式〉

DNSSEC DNS 數位簽章 與 EDNS0 檢查

TWNIC 發佈的新聞說,Cloudflare(1.1.1.1)、Google(8.8.8.8)、IBM(9.9.9.9) 等大型公共 DNS[RFC 7873] 業者 公布預計將於2019年2月1日當天嚴格執行 EDNS 的符合性驗證,若 DNS 軟體 或 網路設備不支援 EDNS協定 將造成 DNS 無法順利解析 或 解析反應變慢。

馬上就有幾個問題:

  1. EDNS 是什麼?
  2. 如何確認自己的 DNS Server 有支援 EDNS?
  3. 若發現自己的 DNS Server 不支援,要怎麼設定來支援 EDNS?

註:TWNIC 新聞說這個情況比較容易發生在外部 DNS Server,若使用 TWNIC 101.101.101.101、101.102.103.104 就不會有此問題。

閱讀全文〈DNSSEC DNS 數位簽章 與 EDNS0 檢查〉

Cloudflare 推出行動裝置快速設定 1.1.1.1 的 App

Cloudflare 提供免費的 DNS Server 服務,跟 Google 的 8.8.8.8 一樣意思,最大的不同在於,主打隱私的部份。

因為一般使用者就算使用 https / ssl,DNS 服務業者還是可以知道 某IP 造訪 某網站,Cloudflare 的 DNS 說不會做任何紀錄。

  • 註1:1.1.1.1 是 DNSPerf 目前評比速度最快的 DNS Server (2018年)
  • 註2:此 App 也刻意在今年的11月11日推上線

閱讀全文〈Cloudflare 推出行動裝置快速設定 1.1.1.1 的 App〉

Linux 各網路界面對 DNS Server 查詢的狀態

Linux 有很多網路界面,eth0 / ppp0 / docker0 / wlan0.. 等等的,每個網路界面都可以自行設定各自的設定檔內容,例如:查詢不同的 DN Server。

如果查詢不到或者沒有設定到,就會往上層 Global 的設定去找,要怎麼查看目前的各個網路界面的設定如何?Global 的設定是如何呢?

閱讀全文〈Linux 各網路界面對 DNS Server 查詢的狀態〉

使用 dnsmasq 當 local 的 /etc/hosts

於 Linux 開發很常需要修改 /etc/hosts 檔,來將 Domain 指定到自己的開發 IP,但是 /etc/hosts 修改久了比較亂,而且如果多人都有各自的 /etc/hosts,要如何自動合併?

  • 註:/etc/hosts 沒有 /etc/hosts.d 的功能,現階段想要此功能,都是 cat ~/hosts.d/.conf > xxx 再 mv xxx /etc/hosts 蓋掉來達成。

閱讀全文〈使用 dnsmasq 當 local 的 /etc/hosts〉