我正在尝试根据this one.测试我编写的新电子邮件验证功能,但稍作调整。
从大量有效和无效条目中,该函数只找到一个假阴性 - 一个具有IPv6地址而不是域的地址。
user@[IPv6:2001:db8:1ff::a0b:dbd0]
源是这个维基百科页面:Email Addresses
但是,System.Net.IPAddress
无法解析IPv6:2001:db8:1ff::a0b:dbd0
,我在RFC4291中找不到任何IPv6前缀的引用。
显然,IPv6:2001:db8:1ff::a0b:dbd0
不是有效的IPv6地址,但它在电子邮件地址中有效吗?或维基百科错了?
实际的电子邮件应该是user@[2001:db8:1ff::a0b:dbd0]
任何人都知道吗?
答案 0 :(得分:6)
您可以通过RFC4291查看IPv6地址格式。但是,对于SMTP(以及任何其他电子邮件软件处理地址),您还应该查看Address Literals中的RFC5321。
您想要的可能是“IPv6-address-literal”。