核心原理
本程式非單純驗證郵件格式,而是透過 SMTP 協議直接連線郵件伺服器,模擬寄信流程驗證帳號真實存在:
- 解析域名 MX 記錄找到郵件伺服器
- 建立 TCP 連線,進行 SMTP 握手
- 發送
MAIL FROM 與 RCPT TO 指令
- 根據伺服器回應碼判斷信箱是否存在
- 驗證完成即中斷連線,不會真正寄出郵件
驗證結果分類儲存
| 結果檔案 | 含義 | 後續處理 |
| OK | 確認存在 | 可直接使用 |
| bad | 確認不存在 | 移除清單 |
| unknown | 伺服器回應不明/暫時性錯誤 | 建議二次驗證提高準確度 |
技術細節
- 開發環境:RedHat Linux
- 編譯測試:通過 GCC 編譯執行
- 原始碼:文章附件提供完整實作
- 支援批次處理大量郵件清單
應用場景
- 郵件行銷清單清洗
- 使用者註冊信箱即時驗證
- 資料庫郵件欄位品質檢核
注意事項
- 部分郵件伺服器有反垃圾郵件機制,可能回應不準確
- 建議實作重試機制與延遲控制,避免被列入黑名單
- 大量驗證時需考慮並發控制與速率限制