【问题标题】:What is the difference between host name and domain name (syntactically)主机名和域名有什么区别(语法上)
【发布时间】:2011-05-16 10:25:40
【问题描述】:

我正在尝试对域名(在电子邮件地址中)和主机名进行验证。在其他几个项目中,我发现人们为此使用相同的功能。问题是,它们在语法上是否有任何可能的差异,我应该为它们中的每一个使用单独的验证例程还是只保留一个?

到目前为止,我发现的示例看起来是这样的(伪代码):

str.split('.')
foreach part in str
    if part.length > max
        return "name is invalid"
    if part contains invalid characters
        return "name contains invalid characters"
return "name valid"

它同时用于主机名和域名

【问题讨论】:

  • 一个可能的区别是上下文。在特别期望主机名的上下文中,IP 地址通常也是可以接受的。但是,如果特别需要一个域名,IP 将不适合。
  • @Martinho Fernandes 您的评论看起来像是一个答案,谢谢。可能我会把它们分开保存。

标签: c# validation hostname domain-name


【解决方案1】:

一个可能的差异是由于上下文。在特别期望主机名的上下文中,IP 地址通常也是可以接受的。如果您将使用主机名连接到它,则尤其如此。

但是如果需要一个域名,就没有“连接”到一个域名这样的事情,所以一个IP地址就不行了。

【讨论】:

    【解决方案2】:

    域名:

    域名是在 Internet 上标识实体(无论是个人还是公司)的唯一名称。域名总是有 2 个或更多由点分隔的部分

    主机名:

    主机名可能会令人困惑,因为它们具有双重含义。如果地址有超过 2 个部分,则 Internet 地址的主机名是完整 Internet 地址的所有最左侧部分。 如果地址只有两部分,那么主机名就相当于域名

    查看article

    【讨论】:

    • TLD 在技术上是一个域名,它只有一个部分。
    • 感谢您的回答。实际上我在提问之前阅读了这篇文章,但问题是主机名和域名在语法上究竟可能不同
    猜你喜欢
    • 1970-01-01
    • 2012-09-28
    • 1970-01-01
    • 2012-04-26
    • 1970-01-01
    • 2013-08-29
    • 2018-05-02
    • 2020-11-27
    • 2016-01-23
    相关资源
    最近更新 更多