在《两台不同网段的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上。怎么办?非常easy,配置路由就可以。配置例如以下:
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请求了。

没有IP地址的主机怎样保持IP层联通的更多相关文章

  1. IP地址子网掩码主机地址网络号主机号

    (1)子网掩码1所对应的位为网络号位 而所对应的位为主机号位 IP地址+子网掩码=网络号: IP地址+子网掩码(反码)=主机号. (2)主机号中的m位被用来表示网络号了,也就是子网号,将0-255划分 ...

  2. Java如何从IP地址查找主机名?

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

  3. Java如何获取本地计算机的IP地址和主机名?

    在Java编程中,如何获取本地计算机的IP地址和主机名? 以下示例显示如何使用InetAddress类的getLocalAddress()方法获取系统的本地IP地址和主机名. package com. ...

  4. 正则表达式通用匹配ip地址及主机检测

    在使用正则表达式匹配ip地址时如果不限定ip正确格式,一些场景下可能会产生不一样的结果,比如ip数值超范围,ip段超范围等,在使用正则表达式匹配ip地址时要注意几点: 1,字符界定:使用  \< ...

  5. Apache服务(基于IP地址,主机名,端口号)

    安装Apache服务程序 需要注意apache服务程序的软件包名称叫做httpd,因此直接执行yum install apache则是错误的. [root@liuxuanke-hbza ~]# yum ...

  6. Java 实例 - 获取本机ip地址及主机名

    package guyu.day0824; import java.net.InetAddress; /** * @Author: Fred * @Date: 2020/8/24 09:39 */ p ...

  7. Nginx禁止直接通过IP地址访问网站以及限制IP登陆某目录(关闭默认站点或空主机头)

    这篇文章主要介绍了Nginx中禁止使用IP访问网站的配置实例,一般在备案时可能需要这种设置,需要的朋友可以参考下   国内因为备案的原因,所有服务器都要禁止使用IP访问网站.否则,如果允许使用IP访问 ...

  8. IP地址及子网--四种IP广播地址

    国际规定:把所有的IP地址划分为 A,B,C,D,E. 类默认子网掩码:A类为 255.0.0.0; B类为 255.255.0.0; C类为 255.255.255.0.子网掩码是一个32位地址,用 ...

  9. PHP获取IP地址的方法,防止伪造IP地址注入攻击

    PHP获取IP地址的方法 /** * 获取客户端IP地址 * <br />来源:ThinkPHP * <br />"X-FORWARDED-FOR" 是代理 ...

随机推荐

  1. python - 接口自动化测试实战 - case1 - 优化版

    题目: 基于以下两个接口和数据完成接口自动化测试,并生成测试报告: '''登录 login='http://47.107.168.87:8080/futureloan/mvc/api/member/l ...

  2. AtCoder Petrozavodsk Contest 001

    第一场apc,5H的持久战,我当然水几个题就睡了 A - Two Integers Time limit : 2sec / Memory limit : 256MB Score : 100 point ...

  3. 剑指offer 面试题38

    面试题38:数字在排序数组中出现的次数 题目:统计一个数字在排序数组中出现的次数.例如输入排序数组{1,2,3,3,3,3,4,5}和数字3,由于3在这个数组中出现了4次,因此输出4. 主要的思路是进 ...

  4. hibernate延迟加载之get和load的区别

    在hibernate中我们知道如果要从数据库中得到一个对象,通常有两种方式,一种是通过session.get()方法,另一种就是通过session.load()方法,然后其实这两种方法在获得一个实体对 ...

  5. 【bzoj4568】[Scoi2016]幸运数字 树上倍增+高斯消元动态维护线性基

    题目描述 A 国共有 n 座城市,这些城市由 n-1 条道路相连,使得任意两座城市可以互达,且路径唯一.每座城市都有一个幸运数字,以纪念碑的形式矗立在这座城市的正中心,作为城市的象征.一些旅行者希望游 ...

  6. hdoj--2082<母函数>

    题目链接 : http://acm.hdu.edu.cn/showproblem.php?pid=2082题目描述:26个字母各有价值,分别是1到26:给出每个字母的个数,求单词价值不超过50 的单词 ...

  7. [luoguP3355] 骑士共存问题(二分图最大独立集)

    传送门 模型 二分图最大独立集,转化为二分图最大匹配,从而用最大流解决. 实现 首先把棋盘黑白染色,使相邻格子颜色不同. 把所有可用的黑色格子看做二分图X集合中顶点,可用的白色格子看做Y集合顶点. 建 ...

  8. THUWC2018爆0记

    Day-2 心里想到要明天就要出发,去长沙膜拜各省dalao,心里挺激动,, 细细整理着行囊 Day-1 一觉睡到天明,正好是星期一,大家都要上课,也没怎么听物理老师讲什么. 到了9:30,就背着包拖 ...

  9. 刷题总结——game(hdu4616)

    题目: Nowadays, there are more and more challenge game on TV such as 'Girls, Rush Ahead'. Now, you par ...

  10. [ZJOI2007]最大半连通子图 (Tarjan缩点,拓扑排序,DP)

    题目链接 Solution 大概是个裸题. 可以考虑到,如果原图是一个有向无环图,那么其最大半联通子图就是最长的一条路. 于是直接 \(Tarjan\) 缩完点之后跑拓扑序 DP就好了. 同时由于是拓 ...