<TCP/IP>记一次关于IP地址和MAC物理地址的思考

  是的,从3月6日第一次上计算机网络课起,我还是今天第一次对这本书里讲的知识点有了自己的疑问。。之前看书就是 嗯嗯这好像很有道理,嗯嗯也许再多看几章就知道它在讲什么了。。

  不过今天已经自学到了网络层了,这章主要介绍了IP地址和物理地址即MAC的关系还有路由选择协议的工作原理,看到ARP高速缓存工作原理时不禁觉得这搞事方法和以太网交换机还有点像。。

  问题来了,这ARP协议就是把IP转换为物理地址,既然已经有了物理地址为何还要多此一举使用IP地址呢?

  知其然要知其所以然。

     IP地址,大家都形象的称为门牌号,像地图定位般表明自己的所处位置,而MAC物理地址就像一个人指纹般,在世界上独一无二的存在。在现实世界中,你若是想与他人面对面联系(直接一点),但是不知道他在哪,你光有指纹是没有什么意义的,这时你需要他的所在地,直接上门找,再靠指纹信息单独确定那个人。

  我又翻看了一下其他大神的答案,有的认为,IP和MAC同时存在的原因是由于因特网是在以太网的基础上建立的,作为一个第三层网络层,需要已有的第二层数据链路层的支持,因此这两者的”冲突“更多是历史原因。。有的是觉得IP可以随意更换,不像网卡坏了失去了mac就不能上网了,换一个网卡继续high,mac也是一样,换个地方换个IP,mac不变也可以继续high。。。还有的就是有了IP地址就能分担路由器存储MAC物理地址的压力,增加处理效率。。。都有道理,到时候上课的时候再问一下老师好了。

                                                    2018-03-26

  

原文地址:https://www.cnblogs.com/peacepeacepeace/p/8654819.html

时间: 2024-11-04 01:11:10

<TCP/IP>记一次关于IP地址和MAC物理地址的思考的相关文章

IP地址与MAC地址

众所周知,每一块网卡在出厂时都烧录了世界唯一的MAC地址,使用该地址可以在网络中识别不同的计算机.同时,互联网中也使用IP地址来定位客户端,这是因为IP地址比MAC地址定位更方便,而且也更加便于记忆.  1.1 IP地址在大多数的局域网中,IP地址是计算机之间通信的唯一依据.当网络中计算机数量比较多时,想要准确记忆每一台计算机的IP地址,显然是一件不太可能的事情.如果网络规模相当大,而且划分了VLAN,那么网络管理员更无法准确记忆用户IP地址了. IP信息查看--ipconfigipconfig

TCP/IP详解学习笔记——IP协议

一 概述 IP协议是TCP/IP协议簇中最核心的协议,所有的TCP.UDP.ICMP以及IGMP数据都以IP数据报格式传输.IP协议提供不可靠.无连接的数据传输服务.不可靠的意思是它不能保证IP数据报能成功到达目的地.IP仅仅提供最好的传输服务.意思就是,我尽我所能传输数据,实在没传过去,也不要怪我.当发生某种错误时,比如某个路由器的缓冲区慢了,此时路由器不能接收新的数据,直接丢弃处理,然后发送ICMP消息给信源端,告诉他我尽力了.如果需要可靠的传输,必须由上层协议来提供,比如TCP协议.无连接

java获取客户端IP地址和MAC地址

最近项目中要获得客户端的mac地址.服务端是移植的centos系统,arm架构的盒子.客户端是手机和移动设备.(其它场景应该也是类似的) 首先要获得ip地址: 根据客户端的http请求,利用request.getRemoteAddr()获取客户端Ip地址.在局域网内getRemoteAddr()和getRemoteHost()获得的结果相同.request.getRemoteAddr()是获得客户端的ip地址 .getRemoteHost()是获得客户端的主机名 .在有些场景中,可能有Squid

理解IP地址和MAC地址

概述: IP 是地址,有定位功能(网与网的通讯)(网络层) MAC 是身份证,无定位功能(在子网干活)(链路层) 首先是如何查看ip地址的问题: Window:ipconfig Linux:ifconfig .ip addr #Linux下ip addr的内容 [email protected]:~# ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default link/lo

IP、CIDR、广播地址、子网掩码、MAC地址--这些是什么鬼

继续学习趣谈网络协议中的内容,认识几个专有名词,IP.CIDR.广播地址.子网掩码.MAC地址,这些都是什么鬼? 一.IP IP地址是一个网卡在网络世界的通讯地址,相当于我们现实世界的门牌号码 (1)IP是英文Internet Protocol的缩写,意思是"网络之间互连的协议",也就是为计算机网络相互连接进行通信而设计的协议.在因特网中,它是能使连接到网上的所有计算机网络实现相互通信的一套规则,规定了计算机在因特网上进行通信时应当遵守的规则.任何厂家生产的计算机系统,只要遵守IP协议

TCP/IP illustrated 第九、十章 IP Routing &amp; Dynamic Routing Protocols

IP routing Summary 定义: IP routing 指的是 IP 如何 make routing decisions,即将 IP datagram 发到哪里去.基础:IP routing 的基础是 IP routing table, 每次发送 IP datagram 的时候,都会参照 routing table,选择合适的 route, 然后发送.IP routing table 可以创建和修改,其方法如下: 通过 ICMP redirect message 改动 通过 user

如果重新设计网络,有没有可能合并IP地址跟MAC地址?

前阵子看网络基础相关的书籍,冒过一个疑问,为什么要有MAC地址跟IP地址?两者可否合二为一? 现在的逻辑是这样子:在数据传输过程中,路由器查看这个数据包的IP地址,跟路由表中记录的“IP集合:下一跳的mac地址”做对照,确定了要往那边扔:网卡在接收数据的时候,也会看看这个数据包中记录的目标MAC地址是不是自己,只接收自己的. MAC地址是数据链路层使用到的,IP地址是网络层使用到的.MAC地址是硬件的物理属性,在网卡上固定不变,IP地址是逻辑属性. 所以,因为网络分层的设计,很自然的就想到要使用

Linux C 网络编程 - 获取本地 ip 地址,mac,通过域名获取对应的 ip

获取本地 ip 地址,mac,通过域名获取对应的 ip, 是网络编程可能遇到的比较常见的操作了,所以总结如下(封装了3个函数), 直接上代码: #include <stdio.h> #include <stdlib.h> #include <string.h> #include <errno.h> #include <unistd.h> #include <netdb.h> #include <net/if.h> #inc

java百分百获取到机器IP地址及MAC码

import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.net.InetAddress; import java.net.NetworkInterface; import java.net.SocketException; import java.util.ArrayList; import java.util.Enumeration; import java.util.List; public class IpU