localhost代表什么,域名,IP和Mac地址之间的区别

通俗易懂,告诉你localhost的秘密

很多做Javaweb的同学都知道,当你通过eclipse或者idea启动你的web项目后,程序会自动呼出一个浏览器,浏览器地址栏的网址就是 http://localhost:8080/你的项目名称,一开始学的时候,你可能还不太懂,localhost是什么,8080又是什么,你可能只知道后面那个项目名是你自己写的,前面一长串,都不太懂是什么意思。

首先咱们从Tom猫(Tomcat)说起,当你需要用Java去开发一个web项目的时候,第一件事情就是去搭建自己的环境,只有环境搭建好了,后面的开发才是有意义的,环境搭建是web开发的先决条件。如果是搭建动态web(Dynamic Web Project)项目,那你需要做的就是jar包的引入,编码格式的设置,jdk,Tomcat,数据库等的配置,如果是Maven构建的项目,那就是pom文件的正确编写,同样和动态web一样,需要其他的一些配置。

你需要知道,最后你的项目是要运行在Tomcat服务器上的,所以,当你配置完后,你需要测试你的Tomcat是否可用,就是在Tomcat的bin路径下,启动Tomcat,然后在浏览器去通过localhost:8080去访问,如果你的Tomcat配置成功并正常启动了,那就能看到一个页面,也就是Tomcat的官网。

这里的localhost被称为域名,他代表的就是你的这台计算机,8080是端口号(端口号是可以修改的,就是在不影响别的进程的情况下,你可以修改某一程序的端口号,8080修改为8081完全没问题的),也就是Tomcat这个程序的一个标识,http://localhost:8080/ 就表示访问你本机上端口号为8080的程序,也就是访问你本机的Tomcat,那后面的项目名是什么意思,这很好解释了,你都通过http://localhost:8080/访问到了你本机的Tomcat了,后面的项目名就是访问Tomcat上面运行的这个项目,因为你开发的项目就是在这个Tomcat上运行的。

那可能有的同学就会问,我用127.0.0.1去替换掉localhost,同样可以在浏览器正常访问到我的项目,那localhost和127.0.0.1有什么关系,localhost是域名,那127.0.0.1又是什么。

localhost是域名没错,127.0.0.1就是人们通常说的ip地址,那为什么你通过127.0.0.1也可以正常访问,那是因为在你的电脑的 C:\Windows\System32\Drivers\etc下的hosts文件中,做了映射,让localhost指向了127.0.0.1,这就是原因,所以你在浏览器通过这两种方式都可以访问。

那既然有ip地址,为什么还要发明域名呢?那是因为IP地址都是数字组成的,不方便人们记忆,域名是按照一定的规则设置的方便人们记忆的计算机的名字。那域名又是如何访问计算机的,这就需要使用域名去和IP地址做映射,这中间是通过DNS(Domain Name System)域名解析服务器做的域名的解析,他会把你在浏览器输入的网址,解析成对应的IP地址,因为每台计算机的IP地址都是唯一的,通过这样的解析,你就能去访问对应计算机上面的资源。

百度的网址www.baidu.com就是一个域名,他对应的IP你可以通过打开cmd,也就是win+R,然后输入ping www.baidu.com 进行查看,这个方法也可以检测你的网络状态,假如你要访问哪台计算机,你可以通过ping命令去检测,看是否能够正常访问。

有的同学是不是还有一个疑问,什么疑问呢,就是Mac地址的问题,Mac地址是和网卡绑定在一起,每台计算机出厂后都有唯一的网卡,也就有唯一的Mac地址与之对应。那既然有Mac地址已经可以唯一确定一台计算机了,为什么还要发明IP地址(逻辑地址),我认为,可能是因为IP地址可以做的事情Mac地址做不了,或者做不好。

IP地址是可以路由的,数据在网络中传递的过程中,IP可以通过路由记录数据的传输路径,而Mac地址不能,他没有这个能力,IP地址可以根据需求进行修改,但是Mac地址不能(现在好像也可以修改),通过IP可以进行子网划分,进而构建超网,但是Mac地址不能。在我看来,Mac地址只是在网络中或者现实中唯一确定计算机的一个标识。如果你用IP唯一确定一台计算机那是不可取的,因为IP是可以随时修改的,IP并不能唯一的标识一台计算机。

发布了32 篇原创文章 · 获赞 4 · 访问量 2366

猜你喜欢

转载自blog.csdn.net/weixin_44644403/article/details/103340685