自己的ip地址是如何访问互联网,原理是什么呢?
我的宽带是联通的,当然是自动分配的ip,有人说自己的ip相当于身份证号,有了身份证才能承认你自己的存在,意思就是说有了ip地址才有资格上网吧,我就在想既然自己有ip,那就能互相访问,那别人为什么不能访问你的电脑,自己的ip又是如何访问别人的东西的?
再此感谢!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
好吧,其实一定是我闲得无聊才来回答这个问题。。。虽然这个问题不属于编程问题,但也是和计算机相关的,放在sf上面也合情合理,题主问问题的态度也很诚恳,如果只因为觉得这个问题太简单或者有错别字就踩它这似乎说不过去(有人踩了一下,我又顶了一下)。
我尽量讲通俗一些吧。首先,的确有IP之后你的设备(电脑、手机)身份才能被认可,但是这个“认可”是有一个范围的,比如你的路由器给你电脑是192.168.1.100/24(这个属于一个私有IP),那么你的电脑的IP也只能在192.168.1.1/24网内(也就是你的局域网)被认可。因为这个被认可的范围太小了(身份不够),所以你的电脑对外界来讲是不可见的(谁会去注意到一个小角色呢)。而我们一般上网所连接的服务器,它拥有的是公有IP,这个IP的在整个网络中都是唯一的(由Inter NIC统一颁发的),它对整个网络都是可见的。现在,公有IP像一个明星一样,而你只是一个默默无闻的小角色,你知道它,但它不知道你。
那么你是怎么上网的,小角色是没有资格直接和一个明星谈话的,那怎么办呢?你的网络提供商(联通)可是有钱去弄几个公有IP的(包养几个明星),跟公网进行数据交互的时候就用公有IP(跟明星对话的时候就用它包养的明星吧),对内部进通信的时候就用私有地址(跟小角色对话的话就平易近人一些吧),说白了提供商是双重身份、两面通吃。你需要连接某个公网服务器的时候,你的电脑先把数据先给你的网关,网关把你的数据封装之后转到公网上去,顺便它会记录下相关信息(比如源地址目的地址等),这个过程就是让提供商帮你向某个明星捎个口信的过程,提供商先记下“xx问题是yy问的”,然后让包养的明星去问这个问题。当服务器对提供商进行响应之后它又把数据转发给你(明星回应了,转告你一声),对于你来讲中间这曲折的转发过程是看不到的,你看到的只是我和某个明星对话它竟然勾搭上了(拜托,人家完全是给提供商包养的明星面子)。这整个过程术语上叫做NAT。
服务器能够被你访问是因为人家身份和地位比较高,虽然直接聊不够格,但是可以找关系(提供商)去和它沟通,它再把结果反馈给你就行了;而人家直接看不到你的存在,先不管它会不会有主动约你的想法,就是它想约你了它都不知道该通过什么途径(全世界有太多的小角色了,你到底是哪个小角色呢)。。。。所以,人家访问不到你是正常的。
请去读 steven 老大的《TCP/IP详解》,就彻底懂了~
"我就在想既然自己有ip,那就能互相访问,那别人为什么不能访问你的电脑,自己的ip又是如何访问别人的东西的?"
网络是分层级的,你的到的ip并不在最外一个层级上(公网/internet上),别人看不到的。
你接入了路由器,你的ip是路由器的dhcp服务分配的。路由器下的网络可以通过路由器访问互联网(全球超大局域网),路由器下的所有设备使用的都是一个同一个公网IP地址。
如果你是直接用电脑拨号的
你可以看一下你本机的ip,
windows OS: ipconfig
Linux OS: ifconfig
。ipv4地址如果不在-
10.x.x.x
-
172.16.x.x至172.31.x.x
-
192.168.x.x
三个地址段中,那么你的ip地址就是公网ip地址,你可以在自己机子上搭设个网站测试,再用手机移动网打开测试一下。
如果你是用路由器拨号的
那么如果如要公网机子访问本机的的话(比如搭设网站),需要在路由器上做端口映射(方法google)。
如果你的地址在上边三个地址段中,那是联通那边用NAT的方法来进行的网络连接(目前的手机3G网就用的是这个方法),具体的原理就复杂了。可以google NAT进行了解。