热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

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中设置路由以及虚拟机联网详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


推荐阅读
  • MySQL 数据库迁移指南:从本地到远程及磁盘间迁移
    本文详细介绍了如何在不同场景下进行 MySQL 数据库的迁移,包括从一个硬盘迁移到另一个硬盘、从一台计算机迁移到另一台计算机,以及解决迁移过程中可能遇到的问题。 ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • 本文探讨了如何在 PHP 的 Eloquent ORM 中实现数据表之间的关联查询,并通过具体示例详细解释了如何将关联数据嵌入到查询结果中。这不仅提高了数据查询的效率,还简化了代码逻辑。 ... [详细]
  • 本文将深入探讨PHP编程语言的基本概念,并解释PHP概念股的含义。通过详细解析,帮助读者理解PHP在Web开发和股票市场中的重要性。 ... [详细]
  • 在Python开发过程中,随着项目数量的增加,不同项目依赖于不同版本的库,容易引发依赖冲突。为了避免这些问题,并保持开发环境的整洁,可以使用Virtualenv和Virtualenvwrapper来创建和管理多个隔离的Python虚拟环境。 ... [详细]
  • PostgreSQL 10 离线安装指南
    本文详细介绍了如何在无法联网的服务器上进行 PostgreSQL 10 的离线安装,并涵盖了从下载安装包到配置远程访问的完整步骤。 ... [详细]
  • 通过Web界面管理Linux日志的解决方案
    本指南介绍了一种利用rsyslog、MariaDB和LogAnalyzer搭建集中式日志管理平台的方法,使用户可以通过Web界面查看和分析Linux系统的日志记录。此方案不仅适用于服务器环境,还提供了详细的步骤来确保系统的稳定性和安全性。 ... [详细]
  • 本文介绍了Linux系统中的文件IO操作,包括文件描述符、基本文件操作函数以及目录操作。详细解释了各个函数的参数和返回值,并提供了代码示例。 ... [详细]
  • 嵌入式开发环境搭建与文件传输指南
    本文详细介绍了如何为嵌入式应用开发搭建必要的软硬件环境,并提供了通过串口和网线两种方式将文件传输到开发板的具体步骤。适合Linux开发初学者参考。 ... [详细]
  • 本文详细介绍了如何在云服务器上配置Nginx、Tomcat、JDK和MySQL。涵盖从下载、安装到配置的完整步骤,帮助读者快速搭建Java Web开发环境。 ... [详细]
  • PHP 编程疑难解析与知识点汇总
    本文详细解答了 PHP 编程中的常见问题,并提供了丰富的代码示例和解决方案,帮助开发者更好地理解和应用 PHP 知识。 ... [详细]
  • 本文详细分析了JSP(JavaServer Pages)技术的主要优点和缺点,帮助开发者更好地理解其适用场景及潜在挑战。JSP作为一种服务器端技术,广泛应用于Web开发中。 ... [详细]
  • CentOS 7 磁盘与文件系统管理指南
    本文详细介绍了磁盘的基本结构、接口类型、分区管理以及文件系统格式化等内容,并提供了实际操作步骤,帮助读者更好地理解和掌握 CentOS 7 中的磁盘与文件系统管理。 ... [详细]
  • 本文详细介绍如何使用arm-eabi-gdb调试Android平台上的C/C++程序。通过具体步骤和实用技巧,帮助开发者更高效地进行调试工作。 ... [详细]
  • PyCharm下载与安装指南
    本文详细介绍如何从官方渠道下载并安装PyCharm集成开发环境(IDE),涵盖Windows、macOS和Linux系统,同时提供详细的安装步骤及配置建议。 ... [详细]
author-avatar
dingzhi521
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有