Internet网是世界上最大的基于IP的网络。它是世界上所有计算机使用IP相互对话的一个无组织的集合。Internet上每台计算机都至少有一个IP地址来标识该计算机。

节点与主机

连接到Internet的设备被称为节点(node),这些节点可以计算机,打印机,路由器,网桥,嵌入式等设备。我们把计算机节点称为主机(host)。每个节点都应该至少有IP地址(IPV4或IPv6)来进行标识。

IPV4与IPV6

IPv4地址用4个字节来表示,每个字节从0到255,通常我们为了书写方便,采用点分十进制方式表示,如:192.168.0.1

IPv6地址为16个字节,书写时用冒号分隔8个区块,每个区块是4个十六进制数字。例如:2400:cb00:2048:0010:0000:000:6ca2:c665。前导的0可以不用写,因此可以写成2400:cb00:2048:10:0:0:6ca2:c665。如果多个区块都是0且相邻,则0可以省略,所以上面的地址又可写成2400:cb00:2048:10::6ca2:c665。注意每个地址中双冒号至多出现一次,如2001::3a3c:4a4c::25cd是错误表示方法,因为我们无法将其唯一的还原为一个128位的IPV6地址。

主机名和域名

主机名是计算机名称,即为每个计算机命名,比如mypc。域名分为顶级域名,一级域名和二级域名。顶级域名自域名系统出现以后已经指定完毕,其通常按地域,职能等来划分,如中国的顶级域名cn,公司的顶级域名为com。我们现在申请的域名都是一级域名如xdysite.cn是我申请的域名。

DNS

我们知道要访问网络上的一台主机必须知道其IP地址,因为这是它唯一的身份标识。但是IP地址一串数字,不便于记忆。于是人们发明了域名系统(DNS)。DNS的作用就是将一个便于记忆的字符串与IP地址映射起来。这时我们只需要记住该字符串即可。等到需要访问Internet上的某个主机时,我们可以拿着字符串去访问DNS来查询该主机对应的IP地址。然后再通过IP地址去访问那个主机即可。

DNS中记录的域名被称为FQDN(Fully Qualified Domain Name/完全合格的域名)。

FQDN=hostname+domainname

域名代表的是一个域,是集合的概念。这个集合的组成元素是每个具体的计算机。我们访问的是具体计算机而不是某个域,这时候就需要使用FQDN来访问才可以。

比如我申请的域名是xdysite.cn,这个域名拿来是无法访问了到某台具体的计算机的。刚好我有一台计算机,它的hostname为www。我将该计算机加入到我的域名下,则得到的FQDN=www.xdysite.cn。这时你就可以通过www.xdysite.cn来访问我这台机器了。

那具体怎么操作呢?

首先,我们去域名提供商那里买个域名,然后通过它提供的web网站来添加主机。

  • 我申请的一级域名xdysite.cn

  • 点击解析

图中的www是添加的一个主机

  • 添加新主机

A表示将该域名映射到一个IP地址,主机记录就是主机名,记录值是该主机对应的IP地址。

添加完成后我们可以通过wyg.xdysite.cn来访问IP地址为123.126.47.53的主机了。

多个名字

一台计算机可以有多个名字。这里的多个名字是所谓的域名,其对应的是web站点的名字。我们把web站点一般都放在Linux主机上。一台Linux主机一般可运行多个web站点,每个web站点都应有一个域名来对该站点进行标识。这样的话一个IP可以和多个域名进行对应。

多个IP

有时一个域名可以对应多个IP地址,这时需要由DNS服务器来随机选择一台机器来相应各个请求。

域名服务器

每台连接到Internet中的计算机都应当访问一个称为域名服务器的机器,它通常是一个运行特殊DNS软件的UNIX/LINUX主机,这种软件里面记录了不同主机名和IP地址之间的映射关系。大多数域名服务器只知道其本地域的上主机的地址,以及其他域中一些域名服务器的地址。如果一个客户端请求本地域之外的一个机器的地址,本地域名服务器就会访问远程位置的域名服务器,然后将结果转给请求者。

Linux下的hostname

hostname表示主机名,但是我们在设置hostname时不应该设为主机名,而应该设置为FQDN

-s :查看计算机简称,其实就是主机名

-f:查看计算机全称,其实就是FQDN

-d:查看计算机所在的域,其实就是域名

Internet网的更多相关文章

  1. sockets+proxychains代理,使内网服务器可以访问外网

    Socks5+proxychains做正向代理 1.         应用场景: 有一台能上外网的机子,内网机子都不能连外网,需求是内网机子程序需要访问外网,做正向代理. 2.         软件 ...

  2. 【转】Internet与Intranet区别

    提起Internet,大家都知道它是一个蓬勃发展的国际互联网. 而Intranet则是近两年才发展起来的新事物,通常被称作企业内部网. Internet是一组全球范围内信息资源的名字.这些资源非常巨大 ...

  3. GNS3内网通过cloud与实际网络实现互连互通的实验(使用环回网口)

    一.背景: 在GNS3内构建一个测试网络,该测试网络的设备能够通过cloud访问外部网络设备和Internet网,外部网络也能直接访问GNS3内网的设备. 考虑通过cloud上的环回口连接GNS3内网 ...

  4. Linux操作系统主机名(hostname)简介

    http://www.jb51.net/LINUXjishu/10938.html 摘要:本文是关于Linux操作系统主机名(hostname)的文档,对主要配置文件/etc/hosts进行简要的说明 ...

  5. 码途有道----基于系统观的核心能力构建-by-韩宏老师

    原文链接:http://blog.sina.com.cn/s/blog_7d5a09f90102v341.html 有感于同学们在大学中如何学习计算机技术有些感概,将我书(老码识途)中的序言整理了一下 ...

  6. 5款强大的Java Web开发工具

    1.WebBuilder这是一款开源的可视化Web应用开发和运行平台.基于浏览器的集成开发环境,采用可视化的设计模式,支持控件的拖拽操作,能轻松完成前后台应用开发:高效.稳定和可扩展的特点,适合复杂企 ...

  7. Docker简明教程

    Docker简明教程 [编者的话]使用Docker来写代码更高效并能有效提升自己的技能.Docker能打包你的开发环境,消除包的依赖冲突,并通过集装箱式的应用来减少开发时间和学习时间. Docker作 ...

  8. 端到端 vs 点到点

    比较(转自 百度经验) 端到端与点到点是针对网络中传输的两端设备间的关系而言的.端到端传输指的是在数据传输前,经过各种各样的交换设备,在两端设备问建立一条链路,就僚它们是直接相连的一样,链路建立后,发 ...

  9. 彻底明白IP地址——IP地址的介绍

    彻底明白IP地址——IP地址的介绍 [ 作者:担子    转贴自:赛迪网    点击数:9692    更新时间:2004-12-22  ]   IP地址的介绍 1.IP地址的表示方法 IP地址 = ...

随机推荐

  1. 『SharePoint』Content Editor Webpart不能添加引用_layouts下面的文件

    好久没写了,最近没怎么学到新东西,倒是犯了一个很常见的错误,那就是试图在content editor webpart中添加位于_layouts下面的一个txt文件,虽然这个txt中只是几行简单的htm ...

  2. 数组Array,集合List与字符串String,整形int的get类方法。

    比如 public static List<DownCountCmd> getDownCountCmdList() { return downCount; } List<DownCo ...

  3. 2016最新cocoapods安装流程,安装过程中遇到的问题及解决方法

    现在的cocoapods与之前比较.有很多不一样的地方.自己试了一试,终于搞定.现在大概纪录一下. 1.首先查看ruby是否是最新版的. ruby是通过rvm安装的所以需要先安装rvm后查看ruby是 ...

  4. 使用Intellij IDEA搭建Ext JsMVC web项目

    由于自己从android开发转来学习web开发,最近在学习Jsp,之前接触过一点Extjs,所以用jsp来配合ext试试. Ext JS介绍 extjs是一个javascript框架,它的好处就是有它 ...

  5. C# Enum,Int,String的互相转换

    版权声明:本文为博主原创文章,未经博主允许不得转载. Enum为枚举提供基类,其基础类型可以是除 Char 外的任何整型.如果没有显式声明基础类型,则使用Int32.编程语言通常提供语法来声明由一组已 ...

  6. C# KeyValuePair<TKey,TValue>的用法-转载

    C# KeyValuePair<TKey,TValue>的用法.结构体,定义可设置或检索的键/值对.也就是说我们可以通过 它记录一个键/值对这样的值.比如我们想定义一个ID(int类型)和 ...

  7. Error: 9001, Severity: 21, State: 5 The log for database 'xxxx' is not available

    昨天下午5点多收到几封告警邮件,我还没有来得及看,GLE那边的同事就电话过来,说数据库出现告警了.让我赶紧看看,案例具体信息如下所示: 告警邮件内容: DATE/TIME: 2015/1/23 17: ...

  8. typedef 和 #define 的区别

    本文已迁移至: http://www.danfengcao.info/c/c++/2014/02/25/difference-between-define-and-typedef.html typed ...

  9. Java 流(Stream)、文件(File)和IO

    Java.io包几乎包含了所有操作输入.输出需要的类.所有这些流类代表了输入源和输出目标. Java.io包中的流支持很多种格式,比如:基本类型.对象.本地化字符集等等. 一个流可以理解为一个数据的序 ...

  10. Linux From Scratch(从零开始构建Linux系统,简称LFS)- Version 7.7(一)

    一. 准备工作 1. 需要一个Linux宿主系统,例如早先版本的 LFS,Ubuntu/Fedora,SuSE 或者是在你的架构上可以运行的其它发行版 如果想实现Win7与Linux双系统,可参考我的 ...