Linux中设置路由以及虚拟机联网图文详解
什么是路由?
路由,是指通过相互连接的网络把数据包从源站传送到目的站的活动,在路由过程中数据包通常会经过一个或多个中转节点(即路由器),这些沿途的路由器会沿着一条最佳路径转发数据包,直至目的地。
什么是路由器?
路由器用于连接不同的网络,是网络之间互相连接的枢纽。路由器的主要工作是为经过路由器的每个数据包寻找一条最佳传输路径,并将该数据有效地传送到目的地。
什么是网关?
网关(GATEWAY)是在网络层以上实现网络互连。
实验1:模拟路由器,让不在同一网段的两台主机可以ping通
首先,要确定哪个虚拟机要设置成路由器,并为这台虚拟机添加两个网卡。我这里是将server端设置为路由器。 在真机中,切换到超级用户root,输入命令:virt-manager
双击server,点击“灯泡”
选择Add Hardware ——>network——>Device model:选择virtio——>Finish
然后给它设置两个不同网段的ip,我这里设置的是172.25.254.224和1.1.1.224
将另一个虚拟机的ip设置为1.1.1.124
将设置为路由器的那台虚拟机和同网段的主机ping一下,看看能不能ping通。
在路由端:
sysctl -a | grep ip_forward ##查看内核路由是否开启,1是打开,0是未开,如果不能通信说明为未开。
未开启,在/etc/sysctl.conf文件中写入:
sysctl -p 目的是让它生效:
在防火墙开启的情况下,开启永久防火墙伪装:
在客户端此时未设置网关,我们在/etc/sysconfig/network中设置网关(1.1.1.224),重启网络。
最后在客户端尝试ping172.25.254网段,发现成功了。
也能登陆真机
over!
实验2:虚拟机联网
主要思想是将真机模拟为一个路由器 此时真机连上网了,可以ping通百度,查看真机的IP
sysctl -a | grep ip_forward ##查看内核路由功能是否开启
systemctl start firewalld ##打开防火墙
firewalld-cmd --add-masquerade ##开启防火墙伪装
在客户端,将ip设置为和真机一个网段,我设置的是172.25.254.124
把网关设置为真机ip172.25.254.1,重启
ping百度的ip183.232.231.172
可以通过输入ip地址访问百度了!
over! 注意:修改网关有两种方式:
vim /etc/sysconfig/network-scripts/ifcfg-eth0 ##设置单独的网卡的网关
vim /etc/sysconfig/network ##设置全局网关
设定全局网关对所有的网卡都生效,访问外网时将所有的数据包都扔给这个网关。这两种方式设定完成后都要重启网络。
以上所述是小编给大家介绍的Linux中设置路由以及虚拟机联网详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对ZaLou.Cn网站的支持!
- 微信小程序深夜开放NFC等连接能力,未来可直接刷公交?
- Silverlight:获取ContentTemplate中的命名控件
- silverlight向wcf传递大于8192字节(8k)的字符串
- vim使用笔记
- "RDLC报表"速成指南
- Silverlight:双向绑定综合应用-自动更新集合汇总字段
- Silverlight:双向绑定综合应用-多集合的依赖绑定
- python sorted排序用法详解
- Silverlight:MouseDragElementBehavior无法应用于ListBox的变相解决办法
- Silverlight:xap包(或本地缓存)下载版本更新的解决思路
- Web开发感悟:数据绑定是一种技术,更是一门艺术
- 我国域名注册保有量位居世界第二,顶级域名55个
- Silverlight:纠结的快捷键问题
- “default关键字”与“序列化传输”的注意事项
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Pytest标记预期失败得测试用例@pytest.mark.xfail()
- IAT HOOK
- 形式化分析工具(六):HLPSL Tutorial
- 推荐一款技术人必备的接口测试神器:Apifox
- GO 文档笔记
- 魔改npm私有仓库 | Verdaccio教程
- 【Vulnhub】AI Web 2.0
- Python迭代器和生成器
- Python深层解析json数据之JsonPath
- Linux 下的 pstack 工具安装及简单应用
- range函数小应用
- 今日算法题,请查收
- 如何将根证书预置到 firefox 浏览器发布包中
- Vue + Flask 实战开发系列(九)
- 推荐几款快速管理 Kubernetes 多集群环境的神器