آموزش IPv6؛ شب پانزدهم: ایمیل، DNS و جزئیات Production
فهرست نوشته
باز بودن Port کافی نیست. برای هر سرویس باید Socket، Firewall، DNS و آزمون بیرونی هماهنگ باشند؛ در ایمیل نیز PTR، EHLO، SPF، DKIM و DMARC باید همراستا شوند.
چکلیست عمومی انتشار#
| مورد | نمونه |
|---|---|
| آدرس ثابت Server | 2001:db8:1200:ab20::25/64 |
| Socket | [2001:db8:1200:ab20::25]:25 یا [::]:25 |
| Firewall میزبان | TCP/25 از مبدأهای لازم |
| Rule فوروارد Router | WAN به آدرس و Port دقیق |
| DNS | AAAA و Recordهای سرویس در صورت نیاز |
| آزمون بیرونی | یک شبکهٔ IPv6 جدا |
| Log و Monitoring | شامل Family مبدأ و مقصد |
فقط روی آدرسهای مورد نظر Bind کنید. [::] دامنهٔ وسیعی دارد؛ آدرس اختصاصی سرویس،
DNS، ACL، Migration و Packet Capture را روشنتر میکند.
DNS Authoritative#
DNS Authoritative معمولاً به UDP و TCP روی Port ۵۳ در IPv4 و IPv6 نیاز دارد. TCP اختیاری نیست؛ پاسخ بزرگ و Zone Transfer به آن وابستهاند. Recursive Resolver را هرگز بهصورت Open Resolver روی اینترنت رها نکنید.
dig @2001:db8:1200:ab20::53 example.net SOA
dig +tcp @2001:db8:1200:ab20::53 example.net SOA
وقتی Tool قالب host:port میخواهد از Bracket استفاده کنید، اما Bracket در دادهٔ
DNS Record جایی ندارد.
ایمیل سختگیرانهتر از «Port ۲۵ باز است»#
پیش از افزودن AAAA برای Mail خروجی، هویتها را هماهنگ کنید:
mail.example.net. 3600 IN A 192.0.2.25
mail.example.net. 3600 IN AAAA 2001:db8:1200:ab20::25
example.net. 3600 IN MX 10 mail.example.net.
از مالک Prefix بخواهید PTR آدرس IPv6 را بسازد:
2001:db8:1200:ab20::25 -> mail.example.net
dig +short AAAA mail.example.net
dig +short -x 2001:db8:1200:ab20::25
openssl s_client -starttls smtp \
-connect '[2001:db8:1200:ab20::25]:25' \
-servername mail.example.net
تحویل قابل اتکا به این موارد نیاز دارد:
- Forward-confirmed Reverse DNS و Banner/هویت EHLO منطبق؛
- SPF که Senderهای IPv4 و IPv6 را مجاز کند؛
- امضای DKIM و Public Key منتشرشده؛
- Policy و Reporting مناسب DMARC؛
- TLS با گواهی معتبر برای Hostname؛
- زمان درست، Abuse Handling، Rate Control، Queue و Reputation؛
- تأیید باز بودن TCP/25 ورودی و خروجی توسط ISP.
صرفاً برای کامل بودن، پیش از آماده شدن PTR و Reputation مسیر خروجی IPv6 اضافه نکنید؛ مقصد ممکن است آن را متفاوت Reject یا Score کند.
سرویسهای دیگر و تغییر DNS#
- SSH را به مبدأهای مشخص و Key محدود کنید و مدیریت Router را تصادفی منتشر نکنید.
- Database و Cache معمولاً داخلیاند؛ روی ULA یا GUA سرور Bind و بر اساس Prefix مبدأ Filter شوند.
- برای VPN فقط Protocol لازم را باز و Route شدن IPv6 داخل Tunnel را بررسی کنید.
- در Container هم Namespace میزبان و هم Container را ببینید؛ انتشار Port در IPv4، Listener در IPv6 را تضمین نمیکند.
- Monitoring باید
AوAAAAرا مستقل Probe کند.
پیش از Migration، TTL را پایین بیاورید، پاسخ Authoritative را از چند شبکه بررسی کنید، آدرس قدیمی را تا پایان پنجرهٔ TTL نگه دارید و فقط پس از تأیید Log حذف کنید. Renumbering یک چرخهٔ عملیاتی است، نه یک ویرایش منفرد.