2、实现不同子网之间的信息交流(互相可以PING通)
一、环境:
二个不同的虚拟子网
VMnet1: 192.168.155.0/24
VMnet8: 192.168.170.0/24
编辑 --》 虚拟网络编辑器 (查看自己的子网,相应修改就行)

虚拟机vm1 192.168.170.3 VMnet8 (NAT模式)
虚拟机vm2 192.168.155.3 VMnet1 (仅主机模式)
虚拟机gate 192.168.170.4 (eth1) VMnet8 (NAT模式)
192.168.155.4 (eth0) VMnet1 (仅主机模式)
可能出错原因:
网络适配器 对应的模式不对 (NAT模式 或者 仅主机模式)
虚拟机 --》 设置 (查看网络适配器的模式,相应修改就行)
虚拟机gate的如下:

如何用putty连接vm1和vm2 以及gate 参考下面链接
gate如何添加以太网卡和不识别的处理方法
虚拟机 --》 设置
如下图添加以太网卡

根据所在的不同子网,选择 NAT模式 或者 仅主机模式,后确定就完成添加。

然后重启系统,如果成功识别二个网卡,如下图,就跳过下面的不识别的处理方法

如果没有二个网卡的话,不识别的处理方法有二个
①、setup命令
[root@localhost root]# setup
选择Network configuration ,按回车,按Yes
在那里 填写 IP address: 192.168.177.4
Netmask: 255.255.255.0
按 OK
最后按 exit 退出
如图:



②、直接编辑 /etc/sysconfig/network-scripts/ifcfg-eth0文件
[root@localhost root]# vi /etc/sysconfig/network-scripts/ifcfg-eth0

接着配置第二个网卡eth1
[root@localhost root]# vi /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.170.4
NETMASK=255.255.255.0
重启network服务,让更改生效
[root@localhost root]# service network restart

至此gate配置就好了,
如果putty连接192.168.170.4和192.168.155.4都成功的话,就可以了。
二、启动gate转发
putty连接192.168.170.4(或者192.168.155.4),
[root@localhost root]# vi /etc/sysctl.conf

使 上面的更改 生效
[root@localhost root]# sysctl -p
(可能错误:
①、不启动gate转发,ping -c 3 192.168.155.3 或者 ping -c 3 192.168.170.3
都会提示: connect: Network is unreachable
②、启动gate转发,vm1和vm2中都没有添加路由的话,
ping -c 3 192.168.155.3 或者 ping -c 3 192.168.170.3
都会提示: connect: Network is unreachable
③、启动gate转发,vm1和vm2中只有一个添加路由的话,例如:
vm1添加了到vm2的路由,可以到vm2, 但是vm2 因为没有到vm1的路由,
没法返回结果给vm1,所以掉包了。如下:
[root@localhost root]# ping -c 3 192.168.155.3
PING 192.168.155.3 (192.168.155.3) 56(84) bytes of data.
--- 192.168.155.3 ping statistics ---
3 packets transmitted, 0 received, 100% packet loss, time 2018ms
提示就是这个掉包。
三、vm1和vm2添加路由
虚拟机vm1 192.168.170.3
[root@www root]# route add -net 192.168.155.0/24 gw 192.168.170.4
(vm1通过192.168.170.4(eth1)到达 192.168.155.0/24子网,从而可以ping通
192.168.155.3)
虚拟机vm2 192.168.155.3
[root@www root]# route add -net 192.168.170.0/24 gw 192.168.155.4
(vm2通过192.168.155.4(eth0)到达 192.168.170.0/24子网,从而可以ping通
192.168.170.3)
[root@localhost root]# route –n
显示路由信息 (添加成功,会多红色的部分)

最后vm1 ping vm2
[root@www root]# ping -c 3 192.168.155.3

vm2 ping vm1
[root@www root]# ping -c 3 192.168.170.3

至此实现不同子网之间的信息交流(互相可以PING通)。
零散知识:
ifconfig eth0 (查看eth0 网络适配器的信息)
route -n (查看路由表)
服务脚本一般存放在 /etc/init.d
例如:
[root@localhost network-scripts]# cd /etc/init.d
[root@localhost init.d]# ls
aep1000 crond httpd killall nfs postfix single xfs
anacron cups iptables kudzu nfslock random squid xinetd
apmd firstboot irda mysqld nscd rawdevices sshd ypbind
atd functions isdn named ntpd rhnsd syslog
autofs gpm kdcrotate netfs pcmcia saslauthd tux
bcm5820 halt keytable network portmap sendmail vsftpd
2、实现不同子网之间的信息交流(互相可以PING通)的更多相关文章
- VLAN和子网之间的区别与联系
通常来说,子网和VLAN的相似之处在于它们都处理网络的一部分的分段或分区.但是,VLAN是数据链路层(OSI L2)的构造,而子网是网络层(OSI L3)的IP构造,它们解决网络上的不同问题.尽管在V ...
- 虚拟机 开发板 PC机 三者之间不能ping通的各种原因分析
这个问题事实上也相对照较简单.可是非常多网友都给我发消息说 遇到不能ping,每一个人都得回答一次确实显得心有余而力不足.如今我对遇到这几种问题给出最完整的解决方式. (说实话基本上也仅仅要这几种可能 ...
- 在不连接网线的情况下Windos与VM之间如何ping通
一般情况下,如果宿主主机的网口连接网线并且能够上网,那么按照VM的默认安装,在VM-Settings-Hardware-Network Adapter-Network connection中选择Bri ...
- 如何判断服务器之间的服务是否可用?ping 还是 telnet?
1. 背景 机器A需要调用机器B的服务,为此要保证服务的可用性,我们有时候用ping,有时候用telent来验证机器A和B的连通性,但有时候会出现这种情况,A可以ping通B,但A调用B的服务会一直报 ...
- fragment之间的信息交互——onActivityResult()不经过Activity
1.本文讲述如何fragment与fragment之间互传信息,不用使用Activity的onActivityResult()方法 核心思想:FirstFragment获取到SecondFragmen ...
- tcp/ip网络里的客户端和服务器端 信息交流 与 安全
ISP(Internet Service Provider) 互联网服务提供商, 即向广大用户综合提供互联网接入业务.信息业务.和增值业务的电信运营商. 通过wireshark学习tcp/ip. 用w ...
- 33-wxpython多个frame之间的信息共享
https://blog.csdn.net/xyisv/article/details/78576932 https://blog.csdn.net/tianmaxingkong_/article/d ...
- Excel不同工作簿之间提取信息
Sub 不同工作簿间提取信息() '用于单个字段信息的提取: Dim w As Workbook, wb1 As Workbook, wb2 As Workbook, wb3 As Workbook ...
- Angular中Controller之间的信息传递(第二种办法):$emit,$broadcast,$on
$emit只能向parent controller传递event与data( $emit(name, args) ) $broadcast只能向child controller传递event与data ...
随机推荐
- 【Win 10 应用开发】手写识别
记得前面(忘了是哪天写的,反正是前些天,请用力点击这里观看)老周讲了一个14393新增的控件,可以很轻松地结合InkCanvas来完成涂鸦.其实,InkCanvas除了涂鸦外,另一个大用途是墨迹识别, ...
- 【.NET深呼吸】应用上下文(AppContext)
在.net 4.6中新增了一个类,叫AppContext,这个家伙嘛,技术含量不算高,只不过是在编程的时候可以方便用用而已.应用上下文允许定义一个标识(用字符串表示),并且在应用程序运行期间可以切换状 ...
- 浅析MySQL基于ROW格式的二进制日志
上文分析的二进制日志实际上是基于STATEMENT格式的,下面我们来看看基于ROW格式的二进制日志,毕竟,两者对应的binlog事件类型也不一样,同时,很多童鞋反映基于ROW格式的二进制日志无法查到原 ...
- JavaScript中尺寸、坐标
测试环境是IE8,Chrome38,Firefox40,下面是全局通用脚本打印代码 /** * 打印 */ function write(str) { document.write(str + '&l ...
- Oracle AWR报告提取方法
本文旨在用来指导项目人员自行提取Oracle数据库的AWR报告. 1.当前连接实例的AWR报告提取:@?/rdbms/admin/awrrpt 2.RAC的其他实例AWR报告提取:@?/rdbms/a ...
- 用struts2标签如何从数据库获取数据并在查询页面显示。最近做一个小项目,需要用到struts2标签从数据库查询数据,并且用迭代器iterator标签在查询页面显示,可是一开始,怎么也获取不到数据,想了许久,最后发现,是自己少定义了一个变量,也就是var变量。
最近做一个小项目,需要用到struts2标签从数据库查询数据,并且用迭代器iterator标签在查询页面显示,可是一开始,怎么也获取不到数据,想了许久,最后发现,是自己少定义了一个变量,也就是var变 ...
- Android指纹识别深入浅出分析到实战(6.0以下系统适配方案)
指纹识别这个名词听起来并不陌生,但是实际开发过程中用得并不多.Google从Android6.0(api23)开始才提供标准指纹识别支持,并对外提供指纹识别相关的接口.本文除了能适配6.0及以上系统, ...
- CSS知识总结(四)
CSS常用样式 2.元素样式 1)宽度 width:auto|length 单位:设置以像素计的宽度值(px) 设置以百分比计的宽度值(%) 例:p {width:200px;} div {width ...
- Elasticsearch的CRUD:REST与Java API
CRUD(Create, Retrieve, Update, Delete)是数据库系统的四种基本操作,分别表示创建.查询.更改.删除,俗称"增删改查".Elasticsearch ...
- Vmware虚拟机安装Ubuntu并设置root登陆
主机操作系统是win7.在Ubuntu官网下好系统镜像.iso文件,安装好Vmware workstation软件 1 安装Ubuntu系统到Vmware虚拟机: 注意下面这步是无法直接设置账号为ro ...