在《 两台不同网段的PC直连是否可以相互ping通》一文中,我有点像在玩旁门左道,本文中,我继续走火入魔。两台机器,M1和M2,各自有一个网卡eth0,配置如下:
M1的配置:
eth0上不配置任何IP地址。
M2的配置:
eth0上不配置任何IP地址。
....
爆炸,机器上都没有IP地址,通个毛线球啊!!
        我只是想在7年后进一步阐述一个常识,即能否互通,路由是根本。在7年前的2010年,我写了一篇文章《 关于IP网段间互访的问题—路由是根本》,在前段时间,我写了一篇类似的《 两台不同网段的PC直连是否可以相互ping通》,7年了,好似没有任何进步,除了文章排版好看了些,唉,也是沉醉,但不妨碍我更进一步。
        我依然想用M1的1.1.1.1来ping M2的2.2.2.2,但却不把这两个地址配置在M1和M2上,怎么办?很简单,配置路由即可。配置如下:
M1的配置:      
ip route add local 1.1.1.1/32 dev eth0
ip route add 2.2.2.2/32 dev eth0 scope link 或者 ip route add 2.2.2.2/32 via 2.2.2.2 dev eth0 onlink

M2的配置:
ip route add local 2.2.2.2/32 dev eth0
ip route add 1.1.1.1/32 dev eth0 scope link 或者 ip route add 1.1.1.1/32 via 2.2.2.2 dev eth0 onlink

试试看,在M1上来ping 2.2.2.2,尽情互通吧。
        看到了吧,没有配置任何IP地址,只配置了路由即可互通,以上配置中,local路由指示了本机接收哪些数据包,而onlink路由则可以直接arp目标。两条路由非常好理解。
        如果是转发设备,需不需要local路由呢?答案是需要的。也许你会问,作为转发设备,没有任何数据包要到本地啊,为什么还要local路由呢?这么理解是对的,然而你忽略了arp。
        不过如果你的链路层不是以太网,而是点到点的noarp链路的话,那么作为转发设备而言,local路由则不再需要。
--------------------
看了这个例子之后,也许你会问,那么IP地址的意义何在?说实话,IP地址的意义仅两点:
1.标识节点。
2.帮配置该IP的节点生成几条路由项:
2.1.标识自身的local路由;
2.2.标识子网的广播路由;
2.3.标识链路的链路层路由,即scope link路由;

看到了吗?如果说你不需要标识主机,只是为了通信,那么当你可以手工配置上述三种路由之后,也就根本不需要IP地址了。
--------------------
其实,IP路由这东西,没什么太多的知识在里面,关键看玩法。高端的玩法,可以搞搞算法,搞搞最短路径,生成树啥的,中端点的可以玩玩协议,BGP,IS-IS,OSPF啥的精通了也够装逼了,屌丝一点的,就像我这种,折腾下边缘点的东西,帮看到我文章的出点变态点的面试题,就很满足了。哈哈。
        说了这么多,路由是根本!没有显示bind的TCP listener怎么知道bind哪个地址?靠路由。UDP报文怎么填充源地址?靠路由。ARP怎么处理?靠路由...

温州皮鞋,下雨进水不会胖!奥康,意尔康,红蜻蜓,日泰,吉尔达,惠特,蜘蛛王,康奈,报喜鸟,这些温州皮鞋牌子,你们都懂吗?你们穿过吗?会穿吗?

补充:
在M1上,如果你如下敲入配置:
ip route add 20.2.2.2/32 via 4.4.4.4 dev eth0
将会怎样?很显然,会提示网络不可达。如何解决?首先你要知道为何网络不可达?很显然系统不知道4.4.4.4在哪里,而你既然想让4.4.4.4成为到达20.2.2.2的下一跳,那它一定在M1的链路上,那么好办,配一条到达4.4.4.4的link路由即可:
ip route add 4.4.4.4/32 dev eth0 scope link
接下来,继续配置ip route add 20.2.2.2/32 via 4.4.4.4 dev eth0,你将看到自己的微笑。
        想互通,路由是根本!

--------------------
7年前的《关于IP网段间互访的问题—路由是根本》有个评论,问了个问题:
arp不是直接调用链路层吗?对M1来说,就算不设置到M2的路由,也应该回答M2发出来的arp解析请求啊。但通过抓包看到M1的确没有回答,这是为什么呢?
直到几天前我才看到并给了回答,估计问问题的不会再看到了,所以我把我的回答贴出来:
将M1收到M2的arp请求的那个网卡的rp_filter配置成0就可以回复M2的arp请求了。

再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

没有IP地址的主机如何保持IP层联通相关推荐

  1. java根据ip查计算机名_Java如何从IP地址查找主机名?

    在Java编程中,如何从IP地址查询出主机名? 以下示例显示了如何通过net.InetAddress类的InetAddress.getByName()方法将指定的IP地址查到主机名称. package ...

  2. 思科配置计算机ip地址子网掩码,计算机系统与网络技术IP地址 子网掩码 主机号等计算复习...

    IP地址 子网掩码 主机号等计算复习 IP地址.子网掩码.网络号.主机号.网络地址.主机地址复习 IP地址:4段十进制,共32位二进制,如:192.168.1.1 二进制就是:11000000|101 ...

  3. 根据IP地址获取主机名称

    IP地址获得主机名称 1. 根据IP地址获得主机名称         /// <summary>         /// 根据IP地址获得主机名称         /// </sum ...

  4. Java 网络实例一(获取指定主机的IP地址、查看端口是否已使用、获取本机ip地址及主机名、获取远程文件大小)

    获取指定主机的IP地址 import java.net.InetAddress; import java.net.UnknownHostException;public class GetIP {pu ...

  5. 修改IP地址和主机名

    安装虚拟机(CentOS) 修改主机名(当前虚拟机的主机名) 查看当前的主机名 命令:hostname 修改主机名 命令:vi /etc/hostname (1)一定要在vi的命令模式下(在编辑模式下 ...

  6. IP地址、主机名、域名解析(DNS)、虚拟机配置固定IP

    一.IP和主机名 1.什么是IP地址 每一台联网的电脑都会有一个地址,用于和其他计算机进行通讯 IP地址主要有两个版本:v4 v6 IPV4版本的地址格式名为:a.b.c.d,其中abcd表示0-22 ...

  7. win7 通过IP地址或主机名给其他电脑发送弹窗信息

    msg */server:IP地址或主机名 "消息内容" WIN7局域网内向指定用户(或IP)发送自动弹出消息正确方法,格式已经[电脑技巧 hugesky.com]编辑测试验证. ...

  8. delphi7 获取计算机名,Delphi中根据IP地址得到主机名

    下载本文示例代码 本实例演示如何利用TUdpSocket组件获取IP地址和主机名. 向窗体上添加一个TUdpSocket组件,如图1所示. 图1 主界面 TUdpSocket组件中有两个属性--Loc ...

  9. 利用command (cmd)命令,实现IP地址与主机名的互查

    1. 通过IP地址查主机名:nbtstat -A 192.168.0.101 2. 通过主机名查IP地址:ping nettesthq2

最新文章

  1. Kotlin 中 Activity 跳转问题
  2. Linux性能调优用这个“必杀技”,稳了!
  3. CentOS使用chkconfig增加开机服务提示service xxx does not support chkconfig的问题解决
  4. python的input()函数与getpass标准库
  5. JAVA实现美团电影价格抓取(附代码)
  6. Java中将inputstream输入流转换成byte[]字节数组
  7. python图像转字符画_Python实现图片转字符画的示例
  8. 市场调研——数据来源、大数据平台、数据统计
  9. Java中输入一个整数n,实现n的阶乘
  10. IT硬件运维的一些建议
  11. CAPI 初探及使用小结(1)
  12. 批量梯度下降法(BGD)、随机梯度下降法(SGD)和小批量梯度下降法(MBGD)
  13. oracle11g登录企业管理器,Oracle11g RAC常用操作 (维护及管理)
  14. 三足鼎立写博赚钱之道--献给2010年初互联网扫黄运动被错杀的兄弟
  15. 小甲鱼主讲—P41—指针03
  16. 如何实现一个直播APP
  17. 去除Windows的弹窗广告
  18. Druid 的 WallFilter 抛出 sql injection violation, comment not allow 问题的解决方法
  19. ElasticSearch 之 文本搜索
  20. html转换成word qt,PHP 将HTML转成PDF文件,HTML 转word,Word 转Html

热门文章

  1. XM 玻璃钢一体化泵站特点及使用寿命
  2. 【郝斌 C语言 笔记】自增
  3. python pandas csv 写文件_Pandas读写CSV文件的方法介绍(附代码)
  4. 不恰当使用线程池处理 MQ 消息引起的故障
  5. Java线程池实现多消费者批量处理队列消息
  6. android studio 编译Telegram源码
  7. 几行代码,复杂Excel 导入导出,真心强大!
  8. html设置图像路径,Html图像标签、绝对路径和相对路径:
  9. 记录一下使用微信小程序wx-open-launch-weapp组件
  10. mysql8.0安装/配置教程。