CentOS 7 下配置ip forward(虚拟路由器)

简介: Linux 中ip forward功能是一个比较方便实用的功能,只需要简单配置,添加几条路由,即可实现ip转发。

Linux 中ip forward功能是一个比较方便实用的功能,只需要简单配置,添加几条路由,即可实现ip转发。本文基于CentOS 7下采取一台机器充当虚拟路由,来实现Windows环境与Linux环境中相互通信。具体见下文,供大家参考。

一、环境及需求说明

这里写图片描述

本地测试环境,由于Win7+VMware这台机器网卡太新,无法被VMware EXSi识别,无奈之下就直接装了个Win7,然后再上面基于Vmware workstation 12开启了一些临时测试的虚拟机。其次本地直连网段192.168.1.0 IP有限,而又希望直接从本机(如图Win10) ssh连接到这些虚拟机,因此考虑使用Linux的ip转发功能来实现。
上述图片中已经列出了各个节点的IP信息,红色的虚拟机充当软路由,配置好之后,实现Win10 直接ssh到虚拟机。

二、虚拟路由服务器配置

###查看网卡信息
[root@centos7-router ~]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
      valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
      valid_lft forever preferred_lft forever
2: eno16777728: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:9c:eb:2d brd ff:ff:ff:ff:ff:ff
    inet 172.24.8.254/24 brd 172.24.8.255 scope global eno16777728
      valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe9c:eb2d/64 scope link 
      valid_lft forever preferred_lft forever
3: eno33554960: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:9c:eb:37 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.175/24 brd 192.168.1.255 scope global dynamic eno33554960
      valid_lft 82384sec preferred_lft 82384sec
    inet6 fe80::20c:29ff:fe9c:eb37/64 scope link 
      valid_lft forever preferred_lft forever

###查看路由表
[root@centos7-router ~]# route -n
Kernel IP routing table  ###缺省情况下,每块网卡都有一个基于本网段的路由记录
Destination    Gateway        Genmask        Flags Metric Ref    Use Iface
0.0.0.0        192.168.1.1    0.0.0.0        UG    100    0        0 eno33554960
172.24.8.0      0.0.0.0        255.255.255.0  U    100    0        0 eno16777728
192.168.1.0    0.0.0.0        255.255.255.0  U    100    0        0 eno33554960

###使用ip命令方式查看路由
[root@centos7-router ~]# ip route list
default via 192.168.1.1 dev eno33554960  proto static  metric 100 
172.24.8.0/24 dev eno16777728  proto kernel  scope link  src 172.24.8.254  metric 100 
192.168.1.0/24 dev eno33554960  proto kernel  scope link  src 192.168.1.175  metric 100  

###开启ip forward
[root@centos7-router ~]# cp /usr/lib/sysctl.d/50-default.conf /usr/lib/sysctl.d/50-default.conf.bk
[root@centos7-router ~]# echo "net.ipv4.ip_forward = 1" >>/usr/lib/sysctl.d/50-default.conf
[root@centos7-router ~]# grep ip_forward /usr/lib/sysctl.d/50-default.conf
net.ipv4.ip_forward = 1
[root@centos7-router ~]# sysctl -p  ###如不生效重启一下OS

三、CentOS7-a主机下添加路由

###查看当前主机ip 信息
[root@centos7-a ~]# ip addr list
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
      valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
      valid_lft forever preferred_lft forever
2: eno16777728: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:57:26:9d brd ff:ff:ff:ff:ff:ff
    inet 172.24.8.131/24 brd 172.24.8.255 scope global dynamic eno16777728
      valid_lft 1088sec preferred_lft 1088sec
    inet6 fe80::20c:29ff:fe57:269d/64 scope link 
      valid_lft forever preferred_lft forever

###查看当前主机路由信息      
[root@centos7-a ~]# ip route list
172.24.8.0/24 dev eno16777728  proto kernel  scope link  src 172.24.8.131  metric 100 

[root@centos7-a ~]# # Author : Leshami
[root@centos7-a ~]# # Blog  : http://blog.csdn.net/leshami
[root@centos7-a ~]# ip route add default via 172.24.8.254
[root@centos7-a ~]# ip route list
default via 172.24.8.254 dev eno16777728 
172.24.8.0/24 dev eno16777728  proto kernel  scope link  src 172.24.8.131  metric 100 

###测试到虚拟路由器网关ip连通性
[root@centos7-a ~]# ping 172.24.8.254 -c 2              
PING 172.24.8.254 (172.24.8.254) 56(84) bytes of data.
64 bytes from 172.24.8.254: icmp_seq=1 ttl=64 time=0.268 ms
64 bytes from 172.24.8.254: icmp_seq=2 ttl=64 time=0.302 ms

--- 172.24.8.254 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1000ms
rtt min/avg/max/mdev = 0.268/0.285/0.302/0.017 ms

###测试到虚拟路由器ip连通性
[root@centos7-a ~]# ping 192.168.1.175 -c 2
PING 192.168.1.175 (192.168.1.175) 56(84) bytes of data.
64 bytes from 192.168.1.175: icmp_seq=1 ttl=64 time=0.475 ms
64 bytes from 192.168.1.175: icmp_seq=2 ttl=64 time=0.443 ms

--- 192.168.1.175 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1000ms
rtt min/avg/max/mdev = 0.443/0.459/0.475/0.016 ms

四、Windows 10下配置路由

###当前环境
C:\>systeminfo | findstr Build
OS Version:                10.0.14393 N/A Build 14393
OS Build Type:            Multiprocessor Free

###查看当前的路由信息
C:\>route print -4
===========================================================================
Interface List
  7...54 ab 3a xx b8 ea ......Intel(R) Ethernet Connection I219-V
21...ac 2b 6e 5f 3b 57 ......Microsoft Wi-Fi Direct Virtual Adapter
                        ......
===========================================================================
IPv4 Route Table
===========================================================================
Active Routes:
Network Destination        Netmask          Gateway      Interface  Metric
          0.0.0.0          0.0.0.0      192.168.1.1    192.168.1.242    35
        127.0.0.0        255.0.0.0        On-link        127.0.0.1    331
        127.0.0.1  255.255.255.255        On-link        127.0.0.1    331
  127.255.255.255  255.255.255.255        On-link        127.0.0.1    331
      172.24.10.0    255.255.255.0        On-link      172.24.10.1    291
      172.24.10.1  255.255.255.255        On-link      172.24.10.1    291
    172.24.10.255  255.255.255.255        On-link      172.24.10.1    291
      192.168.1.0    255.255.255.0        On-link    192.168.1.242    291
    192.168.1.242  255.255.255.255        On-link    192.168.1.242    291
    192.168.1.255  255.255.255.255        On-link    192.168.1.242    291
    192.168.16.0    255.255.255.0        On-link      192.168.16.1    291
    192.168.16.1  255.255.255.255        On-link      192.168.16.1    291
  192.168.16.255  255.255.255.255        On-link      192.168.16.1    291
        224.0.0.0        240.0.0.0        On-link        127.0.0.1    331
        224.0.0.0        240.0.0.0        On-link    192.168.1.242    291
        224.0.0.0        240.0.0.0        On-link      192.168.16.1    291
        224.0.0.0        240.0.0.0        On-link      172.24.10.1    291
  255.255.255.255  255.255.255.255        On-link        127.0.0.1    331
  255.255.255.255  255.255.255.255        On-link    192.168.1.242    291
  255.255.255.255  255.255.255.255        On-link      192.168.16.1    291
  255.255.255.255  255.255.255.255        On-link      172.24.10.1    291
===========================================================================
Persistent Routes:
  None

###添加持久化路由  
C:\>route add 172.24.8.0 mask 255.255.255.0 192.168.1.175 -p
OK!

C:\>route print -4

IPv4 Route Table
===========================================================================
Active Routes:
Network Destination        Netmask          Gateway      Interface  Metric
          0.0.0.0          0.0.0.0      192.168.1.1    192.168.1.242    35
        127.0.0.0        255.0.0.0        On-link        127.0.0.1    331
        127.0.0.1  255.255.255.255        On-link        127.0.0.1    331
  127.255.255.255  255.255.255.255        On-link        127.0.0.1    331
      172.24.8.0    255.255.255.0    192.168.1.175    192.168.1.242    36
      172.24.10.0    255.255.255.0        On-link      172.24.10.1    291
      172.24.10.1  255.255.255.255        On-link      172.24.10.1    291
    172.24.10.255  255.255.255.255        On-link      172.24.10.1    291
      192.168.1.0    255.255.255.0        On-link    192.168.1.242    291
    192.168.1.242  255.255.255.255        On-link    192.168.1.242    291
    192.168.1.255  255.255.255.255        On-link    192.168.1.242    291
    192.168.16.0    255.255.255.0        On-link      192.168.16.1    291
    192.168.16.1  255.255.255.255        On-link      192.168.16.1    291
  192.168.16.255  255.255.255.255        On-link      192.168.16.1    291
        224.0.0.0        240.0.0.0        On-link        127.0.0.1    331
        224.0.0.0        240.0.0.0        On-link    192.168.1.242    291
        224.0.0.0        240.0.0.0        On-link      192.168.16.1    291
        224.0.0.0        240.0.0.0        On-link      172.24.10.1    291
  255.255.255.255  255.255.255.255        On-link        127.0.0.1    331
  255.255.255.255  255.255.255.255        On-link    192.168.1.242    291
  255.255.255.255  255.255.255.255        On-link      192.168.16.1    291
  255.255.255.255  255.255.255.255        On-link      172.24.10.1    291
===========================================================================
Persistent Routes:  ###以下为添加的持久化路由记录
  Network Address          Netmask  Gateway Address  Metric
      172.24.8.0    255.255.255.0    192.168.1.175      1  
===========================================================================

五、验证两边连通性

###从Linux端ping windows 10
[root@centos7-a ~]# ping 192.168.1.242 -c 2      
PING 192.168.1.242 (192.168.1.242) 56(84) bytes of data.
64 bytes from 192.168.1.242: icmp_seq=1 ttl=63 time=1.70 ms
64 bytes from 192.168.1.242: icmp_seq=2 ttl=63 time=1.10 ms

--- 192.168.1.242 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1002ms
rtt min/avg/max/mdev = 1.101/1.404/1.707/0.303 ms

###从windows 10端ping Linux
C:\>ping 172.24.8.131 -t

Pinging 172.24.8.131 with 32 bytes of data:
Reply from 172.24.8.131: bytes=32 time=1ms TTL=63
Reply from 172.24.8.131: bytes=32 time=1ms TTL=63

注,如果测试有问题,请考虑是否被防火墙拦住。

DBA牛鹏社(SQL/NOSQL/LINUX)

这里写图片描述

目录
相关文章
|
2月前
|
Linux 网络安全 Apache
CentOS 7.2配置Apache服务httpd(上)
CentOS 7.2配置Apache服务httpd(上)
259 1
|
1月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
104 2
|
2月前
|
Java jenkins 持续交付
Centos7下docker的jenkins下载并配置jdk与maven
通过上述步骤,您将成功在CentOS 7上的Docker容器中部署了Jenkins,并配置好了JDK与Maven,为持续集成和自动化构建打下了坚实基础。
125 1
|
2月前
|
存储 监控 Linux
在 CentOS 7 中如何对新硬盘进行分区、格式化、挂载及配置最佳实践
本文详细介绍了在 CentOS 7 中如何对新硬盘进行分区、格式化、挂载及配置最佳实践,包括使用 `fdisk` 创建分区、`mkfs` 格式化分区、创建挂载点、编辑 `/etc/fstab` 实现永久挂载等步骤,旨在有效管理服务器磁盘空间,提高系统稳定性和可维护性。
209 1
|
2月前
|
Linux PHP Apache
CentOS 7.2配置Apache服务httpd(下)
CentOS 7.2配置Apache服务httpd(下)
52 1
|
4月前
|
弹性计算 关系型数据库 MySQL
centos7 mysql安装及配置
本文详细介绍了在阿里云服务器ECS上通过yum源安装MySQL 8.0.12的过程,包括更新yum源、下载并安装MySQL源、解决安装过程中可能遇到的问题等步骤。此外,还介绍了如何启动MySQL服务、设置开机自启、配置登录密码、添加远程登录用户以及处理远程连接异常等问题。适合初学者参考,帮助快速搭建MySQL环境。
525 8
centos7 mysql安装及配置
|
3月前
|
Linux
CentOS 7.x时间同步服务chrony配置详解
文章详细介绍了在CentOS 7.x系统中如何安装和配置chrony服务,以及它与ntpd服务的对比,强调了chrony在时间同步方面的高效性和准确性。
222 2
CentOS 7.x时间同步服务chrony配置详解
|
2月前
|
安全 Linux 数据库连接
CentOS 7环境下DM8数据库的安装与配置
【10月更文挑战第16天】本文介绍了在 CentOS 7 环境下安装与配置达梦数据库(DM8)的详细步骤,包括安装前准备、创建安装用户、上传安装文件、解压并运行安装程序、初始化数据库实例、配置环境变量、启动数据库服务、配置数据库连接和参数、备份与恢复、以及安装后的安全设置、性能优化和定期维护等内容。通过这些步骤,可以顺利完成 DM8 的安装与配置。
285 0
|
2月前
|
Linux
CentOS-Stream-9配置chfs
通过上述步骤,您就可以在CentOS Stream 9上配置并运行CHFS,为用户提供基于HTTP的文件分享服务。请注意,实际操作时应根据CHFS的具体版本和文档进行适当调整。
58 0
|
2月前
|
Ubuntu 网络协议 Linux
liunx各大发行版(centos,rocky,ubuntu,国产麒麟kylinos)网卡配置和包管理方面的区别
liunx各大发行版(centos,rocky,ubuntu,国产麒麟kylinos)网卡配置和包管理方面的区别
126 0