banner

[Rule] Rules  [Home] Main Forum  [Portal] Portal  
[Members] Member Listing  [Statistics] Statistics  [Search] Search  [Reading Room] Reading Room 
[Register] Register  
[Login] Loginhttp  | https  ]
 
Forum Index Thảo luận hệ điều hành *nix CNAME và Email Address (MX)  XML
  [Discussion]   CNAME và Email Address (MX) 28/11/2009 03:10:57 (+0700) | #1 | 199309
huuhien
Member

[Minus]    0    [Plus]
Joined: 07/04/2005 20:06:32
Messages: 26
Offline
[Profile] [PM]
Dear mọi người ,
Ở công ty mình đang tranh cãi một số vấn đề về CNAME và DNS như sau . Mình có cấu hình DNS :

---
example.com. CNAME host.example.com.
host.example.com A 192.0.4.1
foo.example.com. A 192.0.2.1
example.com. MX foo.example.com.
----
Vậy cấu hình DNS cho example.com như trên là sai hay đúng ? Mình có tìm hiểu trên google cũng không thấy rõ ràng trường hợp trên là đúng hay sai cả . Mong ai có kinh nghiệm giúp mình.
Best regards,
Huu Hien

http://en.wikipedia.org/wiki/CNAME_record
http://www.ferris.com/2008/09/16/how...o-use-a-cname/
http://www.inetdaemon.com/tutorials/...ds/cname.shtml
http://www.ferris.com/2008/09/08/why...-cname-and-mx/
[Up] [Print Copy]
  [Discussion]   CNAME và Email Address (MX) 28/11/2009 03:51:31 (+0700) | #2 | 199312
[Avatar]
huan_ng
Member

[Minus]    0    [Plus]
Joined: 04/03/2005 23:10:38
Messages: 259
Offline
[Profile] [PM] [Yahoo!]
CNAME (ALIAS), A record (HOST), MX record là các "thành phần" cần phải có trong 1 DNS server, tùy vào mục đích mà tạo các record cho đúng với ý đồ sử dụng của mình.

Nói cho dễ hiểu nếu 1 server có nhiều dịch vụ FTP,WEB, MAIL, ... thì chúng ta xài ALIAS để phân biệt các dịch vụ đó trên cùng 1 server. Còn ngược lại (có 1 dịch vụ mà chạy trên nhiều server) thì ta xài HOST để phân biệt từng dịch vụ chạy trên server nào.
Not much but not nothing
[Up] [Print Copy]
  [Discussion]   CNAME và Email Address (MX) 28/11/2009 03:57:06 (+0700) | #3 | 199313
[Avatar]
quanta
Moderator

Joined: 28/07/2006 14:44:21
Messages: 7265
Location: $ locate `whoami`
Offline
[Profile] [PM]

huuhien wrote:
Dear mọi người ,
Ở công ty mình đang tranh cãi một số vấn đề về CNAME và DNS như sau . Mình có cấu hình DNS :

---
example.com. CNAME host.example.com.
host.example.com A 192.0.4.1
foo.example.com. A 192.0.2.1
example.com. MX foo.example.com.
----
Vậy cấu hình DNS cho example.com như trên là sai hay đúng ? Mình có tìm hiểu trên google cũng không thấy rõ ràng trường hợp trên là đúng hay sai cả . Mong ai có kinh nghiệm giúp mình.
 

Về nguyên tắc thì không sai, nhưng mà RFC khuyến cáo là không nên và thực tế thì một số người bảo đừng làm thế (mình chưa có dịp kiểm chứng):
http://www.ferris.com/?p=321026
http://www.ferris.com/?p=321031
http://blogs.eweek.com/cheap_hack/content/dns/dont_mix_mx_and_cname_records.html

Let's build on a great foundation!
[Up] [Print Copy]
  [Discussion]   CNAME và Email Address (MX) 28/11/2009 05:33:55 (+0700) | #4 | 199326
huuhien
Member

[Minus]    0    [Plus]
Joined: 07/04/2005 20:06:32
Messages: 26
Offline
[Profile] [PM]
Nhưng theo các trường hợp theo link của bạn đưa là nó như sau:

foo.example.com. CNAME host.example.com.
host.example.com. A 192.0.2.1
example.com. MX foo.example.com.

Trường hợp này đồng ý là nó có lỗi.
Nhưng trường hợp mình thì lại khác 1 chút:
---
example.com. CNAME host.example.com.
host.example.com A 192.0.4.1
foo.example.com. A 192.0.2.1
example.com. MX foo.example.com.
----
Nếu để example.com là 1 cái A record 192.0.4.1 thì cũng đâu có gì khác phài ko?
[Up] [Print Copy]
  [Discussion]   CNAME và Email Address (MX) 28/11/2009 05:53:57 (+0700) | #5 | 199327
[Avatar]
quanta
Moderator

Joined: 28/07/2006 14:44:21
Messages: 7265
Location: $ locate `whoami`
Offline
[Profile] [PM]

huuhien wrote:
Nhưng theo các trường hợp theo link của bạn đưa là nó như sau:

foo.example.com. CNAME host.example.com.
host.example.com. A 192.0.2.1
example.com. MX foo.example.com.

Trường hợp này đồng ý là nó có lỗi.
Nhưng trường hợp mình thì lại khác 1 chút:
---
example.com. CNAME host.example.com.
host.example.com A 192.0.4.1
foo.example.com. A 192.0.2.1
example.com. MX foo.example.com.
----
 

Hình như bạn chưa đọc kỹ cái link đầu tiên.

huuhien wrote:

Nếu để example.com là 1 cái A record 192.0.4.1 thì cũng đâu có gì khác phài ko?
 

Có đấy, khác chứ, lỗi ngay.
Let's build on a great foundation!
[Up] [Print Copy]
  [Discussion]   CNAME và Email Address (MX) 28/11/2009 06:48:59 (+0700) | #6 | 199333
[Avatar]
tmd
Member

[Minus]    0    [Plus]
Joined: 28/06/2006 03:39:48
Messages: 2951
Offline
[Profile] [PM]

O'Reilly-SendMail-Chapter 21.3 wrote:
21.3.2 MX to CNAME Causes Extra Lookups

The sendmail program is frequently more forgiving than other MTAs because it accepts an MX record that points to a CNAME record. The presumption is that, eventually, the CNAME will correctly point to an A record. But beware, this kind of indirection can cost additional DNS lookups. Consider this example of an exceptionally bad setup:

hostA IN MX 10 mailhub
mailhub IN CNAME nfsmast
nfsmast IN CNAME hostB
hostB IN A 123.45.67.89

First, sendmail looks up hostA and gets an MX record pointing to mailhub. Since there is only a single MX record, sendmail considers mailhub to be official. Next, mailhub is looked up to find an A record (IP address), but instead a CNAME (nfsmast) is returned. Now sendmail must look up the CNAME nfsmast to find its A record. But again a CNAME is returned instead of an A record. So sendmail must again look for an A record (this time with hostB). Finally, sendmail succeeds by finding the A record for hostB, but only after a few too many lookups.

The correct way to form the above DNS file entries is as follows:

hostA IN MX 10 hostB
mailhub IN CNAME hostB
nfsmast IN CNAME hostB
hostB IN A 123.45.67.89

In general, try to construct DNS records in such a way that the fewest lookups are required to resolve any A or MX records.  
3 giai đoạn của con... người, ban đầu dek biết gì thì phải thăm dò, sau đó biết rồi thì phải thân thiết, sau cùng khi quá thân thiết rồi thì phải tình thương mến thương. Nhưng mà không thương được thì ...
[Up] [Print Copy]
  [Discussion]   CNAME và Email Address (MX) 28/11/2009 06:49:09 (+0700) | #7 | 199334
huuhien
Member

[Minus]    0    [Plus]
Joined: 07/04/2005 20:06:32
Messages: 26
Offline
[Profile] [PM]
Ok, nhưng trường hợp này thì đúng phải không?
example.com. CNAME host.example.com.
host.example.com A 192.0.2.1
foo.example.com. A 192.0.2.1
example.com. MX foo.example.com.
[Up] [Print Copy]
  [Discussion]   CNAME và Email Address (MX) 28/11/2009 06:52:49 (+0700) | #8 | 199335
[Avatar]
tmd
Member

[Minus]    0    [Plus]
Joined: 28/06/2006 03:39:48
Messages: 2951
Offline
[Profile] [PM]

huuhien wrote:
Ok, nhưng trường hợp này thì đúng phải không?
example.com. CNAME host.example.com.
host.example.com A 192.0.2.1
foo.example.com. A 192.0.2.1
example.com. MX foo.example.com.
 

PS:
Bạn xem DNS sẽ xử lý 4 dòng đó như thế nào khi người ta gửi mail tới mail server được cấu hình theo ý bạn.
Bạn xem
http://74.125.153.132/search?q=cache:Mxb2YVf7jLIJ:en.wikipedia.org/wiki/CNAME_record+cname+vs+mx&cd=8&hl=vi&ct=clnk&gl=vn và xem Restrictions như trong các RFC mà cái link đó đề cập để tránh rắc rối.
Restrictions

* CNAME must have no other resource records of other types (MX, A, etc.). (RFC 1034 section 3.6.2, RFC 1912 section 2.4) The exception is when DNSSEC is being used, in which case there can be a DNSSEC related records such as RRSIG, NSEC, etc. (RFC 2181 section 10.1)

* CNAME records that point to other CNAME records should be avoided (RFC 1034 section 5.2.2). In particular, it is possible to create infinite loops with CNAME records, and other error conditions, as:

foo.example.com. CNAME bar.example.com.
bar.example.com. CNAME foo.example.com.

* Other DNS record types, such as NS, MX, PTR, SRV, etc. that point to other names should never point to a CNAME. (RFC 1034 section 3.6.2, RFC 1912 section 2.4) So, for example, a zone should not contain constructs such as:

foo.example.com. CNAME host.example.com.
host.example.com. A 192.0.2.1
example.com. MX foo.example.com.
 


PS tiếp: bạn xem http://74.125.153.132/search?q=cache:ZP6P3g0Rz7oJ:en.wikipedia.org/wiki/MX_record+DNS+record+priority&cd=1&hl=vi&ct=clnk&gl=vn

Về mục http://tools.ietf.org/html/rfc2181
3 giai đoạn của con... người, ban đầu dek biết gì thì phải thăm dò, sau đó biết rồi thì phải thân thiết, sau cùng khi quá thân thiết rồi thì phải tình thương mến thương. Nhưng mà không thương được thì ...
[Up] [Print Copy]
  [Discussion]   CNAME và Email Address (MX) 28/11/2009 10:28:38 (+0700) | #9 | 199345
[Avatar]
learn2hack
Elite Member

[Minus]    0    [Plus]
Joined: 29/06/2006 16:32:37
Messages: 825
Offline
[Profile] [PM] [WWW]
huuhien đọc kỹ link đầu tiên anh quanta gửi đi, ở đó chỉ khá rõ rồi đó:

nếu bạn config:

example.com. CNAME host.example.com.
example.com. MX foo.example.com.

thì email gửi tới example.com đôi khi bị mail server "bỏ qua" record MX, mà chỉ đọc record CNAME, nên email sẽ gửi tới sai địa chỉ.


example.com. CNAME www.example.com
www.example.com. A 1.2.3.4
mail.example.com. A 1.2.3.5
example.com. MX mail.example.com.
(A CNAME record basically denotes an alias — it stands for canonical name.)

All seemed well. Web browsers connected to the right place and a test email message worked fine. However, he soon discovered that some email wasn’t reaching him any more.

To cut a long story short, it turns out that some mail servers ignore the MX records if there’s a CNAME. Instead, they simply follow the CNAME pointer and try to deliver the email there. In other words, they were trying to deliver email to his Web server!
 
Blog: http://hontap.blogspot.com
Tải phần mềm miễn phí: http://www.taiphanmem.org
[Up] [Print Copy]
  [Discussion]   CNAME và Email Address (MX) 30/11/2009 12:17:34 (+0700) | #10 | 199452
huuhien
Member

[Minus]    0    [Plus]
Joined: 07/04/2005 20:06:32
Messages: 26
Offline
[Profile] [PM]
Đúng rùi ,
Mình biết có 1 số mail server nó bỏ qua MX mà tìm CNAME . Nhưng trong trường hợp của mình:

example.com. CNAME host.example.com.
host.example.com A 192.0.2.1
foo.example.com. A 192.0.2.1
example.com. MX foo.example.com.

CNAME là host.example.com cũng chính là ip của mail server đó ,, nên đâu gây ra vấn đề gì đúng không ?
[Up] [Print Copy]
  [Discussion]   CNAME và Email Address (MX) 30/11/2009 21:08:14 (+0700) | #11 | 199486
[Avatar]
learn2hack
Elite Member

[Minus]    0    [Plus]
Joined: 29/06/2006 16:32:37
Messages: 825
Offline
[Profile] [PM] [WWW]
Nếu cả 2 địa chỉ ip của foo.example.com và host.example.com giống nhau thì mình ko chắc (nhưng mình nghĩ sẽ hoạt động được vì dù các dns server bỏ qua mx record mà đọc cname record thì nó vẫn trỏ đến đúng).

Nhưng ở đây có 1 thắc mắc hỏi lại bạn là trong các bài post trước, 2 địa chỉ ip này khác nhau, tại sao ở bài trả lời cuối cùng lại thành giống nhau?

Nếu 2 địa chỉ ip này khác nhau, dns server sẽ chuyển hướng nhầm, và cấu hình của bạn sẽ thành có lỗi.
Blog: http://hontap.blogspot.com
Tải phần mềm miễn phí: http://www.taiphanmem.org
[Up] [Print Copy]
[digg] [delicious] [google] [yahoo] [technorati] [reddit] [stumbleupon]
Go to: 
 Users currently in here 
1 Anonymous

Powered by JForum - Extended by HVAOnline
 hvaonline.net  |  hvaforum.net  |  hvazone.net  |  hvanews.net  |  vnhacker.org
1999 - 2013 © v2012|0504|218|