【跨网段网络实验】Linux做路由转发,Windows做路由转发

1. Windows设计实验

1.1. 实验环境

Windows均为win10主机
Linux均为Ubuntu22.04
windows使用VMWare创建一台自己的虚拟机,使用NAT网络使其连上网络
网络拓扑图如下
网络拓扑图

主机以太网VM1VM8WSL/WLAN
B(Windows1)169.254.4.203192.168.56.1192.168.40.110.198.41.220
C(Windows2)169.254.34.172192.168.80.1192.168.146.1
ens33ens37/38
B1(Linux1)192.168.40.128 /24169.254.4.2 /26
C1(Linux2)192.168.146.128 /24169.254.4.4 /16

1.2. 实验步骤

为了使Linux1和LInux2互相ping通

  1. 两台windows的IP转发(可以转发)
  2. 两台windows的静态路由(转发给谁)
  3. 两台Linux的静态路由(转发给谁)

1.2.1. 两台windows的IP转发

两台windows都要进行以下操作

  1. win+r输入regedit可进入注册表编辑器
    计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
    修改IPEnableRouter的值为1
  2. win+r输入services.msc可进入服务
    找到Routing and Remote Access,进入属性->设置启动类型为自动->应用->服务状态点击启动,启动完成后->确定

完成后可查看
IP转发
服务配置

1.2.2. 两台windows的静态路由

两台windows都要进行以下操作
按住shift右击win->Windows Power Shell(管理员)

  1. window1(169.254.4.203)
    添加路由
route add 192.168.146.0 mask 255.255.255.0 169.254.34.172 -p
  1. windows2(169.254.34.172)
    添加路由
route add 192.168.40.0 mask 255.255.255.0 169.254.4.203 -p

完成后可以使用route print查看是否增加一条永久路由,以windows2为例
windows路由配置
重启Windows

1.2.3. 两台Linux的静态路由

两台Linux都要进行以下操作
可以进行网段的配置,也可以进行主机的配置,这里以主机为例(网段的配置在 Linux设计实验)
1.Linux1(192.168.40.128)
添加一条主机路由

route add -host 192.168.146.128 gw 192.168.11.3

2.Linux2(192.168.146.128)
添加一条主机路由

route add -host 192.168.40.128 gw 192.168.11.3

可以使用route -n进行查看

1.3. 实验结果

Linux1(192.168.40.128)和Linux2(192.168.146.128)互相ping通

!!注意!!:如果ping不通,可以尝试重启Windows

2. Linux设计实验

2.1. 实验环境

PC1为win10主机,在VMWare 17 Pro中创建了三台Linux主机
Linux:Ubuntu 22.04

在虚拟机网络编辑器中创建VMNet10和VMNet11,均为仅主机模式
Linux1创建一块网卡,选择自定义,选择VMNet10,
Linux2创建三块网卡,第一块选择自定义,选择VMNet10,
– 第二块选择NAT,确保能上网,
– 第三块选择自定义,选择VMNet11
Linux3创建一块网卡,选择自定义,选择VMNet11,
即让Linux1和Linux2位于VMNet10,Linux2与Linux3位于VMNet11
网络拓扑如图
Linux网络拓扑

2.2. 实验步骤

每台机器都有IP后,Linux1通过Linux2转发给Linux3,需要以下步骤

  1. 配置网卡(有名字)
  2. 配置ipv4转发(可转发)
  3. 配置防火墙(转发不拦截)
  4. 配置静态路由(通过谁转)

2.2.1. 配置网卡

  1. Linux1
    使用ifconfig命令设置Linux1的网卡信息
# 设置网卡
ifconfig ens33 192.168.10.10 netmask 255.255.255.0
# 重启网络服务
systemctl restart NetworkManager
  1. Linux2
    使用ifconfig命令设置Linux1的网卡信息
    也可以选择使用dhcp服务自动分配IP,如使用dhclient -d,成功分配IP地址后可以使用Ctrl+C中止IP分配
# 设置网卡,为什么是这几个网卡我并不清楚
ifconfig ens33 192.168.10.3 netmask 255.255.255.0
ifconfig ens37 192.168.223.3 netmask 255.255.255.0
ifconfig ens38 192.168.11.3 netmask 255.255.255.0
# 重启网络服务
systemctl restart NetworkManager
  1. Linux3
    使用ifconfig命令设置Linux1的网卡信息
# 设置网卡
ifconfig ens33 192.168.11.11 netmask 255.255.255.0
# 重启网络服务
systemctl restart NetworkManager

完成后可以分别在这几台主机上使用ifconfig查看ip是否分配正确

2.2.2. Linux2配置ipv4转发

  • 临时配置
echo "1" > /proc/sys/net/ipv4/ip_forward
  • 永久配置
echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
# 使其立即生效
sysctl -p

完成后可以使用cat /proc/sys/net/ipv4/ip_forward查看,为1说明开启了IP转发

2.2.3. Linux2配置防火墙

# 查看iptables的转发规则
iptables --list
# Chain FORWARD (policy DROP)这行中的策略(policy)是DROP,则需要修改成为ACCEPT
# 配置允许IP转发
iptables -P FORWARD ACCEPT

完成后可以使用iptables --list查看若有Chain FORWARD (policy ACCEPT)则代表成功

2.2.4. 配置静态路由

可以进行网段的配置,也可以进行主机的配置,这里以网段为例

  1. Linux1(192.168.10.10)
# 配置路由
route add -net 192.168.11.0/24 gw 192.168.10.3
  1. Linux2(192.168.11.11)
# 配置路由
route add -net 192.168.10.0/24 gw 192.168.11.3

完成后可分别使用route -n查看路由表配置情况,如Linux2多出一行192.168.10.0网段的路由
Linux2的路由

2.3. 实验结果

Linux1(192.168.10.10)和Linux3(192.168.11.11)互相ping通

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值