问题:
PC1为ubuntu的系统,网卡enp3s0,其ip是:192.168.9.117; PC2为win10的系统,网卡eth0,其ip是:192.168.9.118,PC2的另外一个网卡是eth1,ip是:192.168.8.75; PC3为ubuntu的系统,网卡enp6s0,其ip是:192.168.86; 现在PC1和PC2可以互通,PC2与PC3可以互通, 请问如何分别在PC1、PC2、PC3上做路由数据,可以实现从PC1访问PC3?
解决方法:
为了让PC1能够访问PC3,你需要在三台电脑上进行以下设置:
1. 在PC1(192.168.9.117)上添加路由: 打开终端,输入以下命令:
bash sudo route add -net 192.168.8.0 netmask 255.255.255.0 gw 192.168.9.118 dev enp3s0这条命令是在PC1上添加一条路由,使得从PC1访问到192.168.8.0/24网段时通过网关192.168.9.118。
2. 在PC2(192.168.9.118和192.168.8.75)上启用IP转发: 由于PC2需要转发来自PC1的数据包,需要打开IP转发功能。在Windows 10中,首先需要打开注册表进行设置。 按下Windows键,然后输入regedit,找到以下路径:
``` HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters ```
将IPEnableRouter的值设置为1。重新启动PC2。然后需要在PC2中添加防火墙规则,允许数据包转发。打开Powershell,以管理员身份运行,并输入以下命令: ```powershell New-NetFirewallRule -DisplayName "Enable IP Forwarding" -Direction Both -Action Allow -Protocol Any -Profile Domain,Public,Private ```
3. 在PC3(192.168.8.86)上添加路由: 打开终端,输入以下命令:
bash sudo route add -net 192.168.9.0 netmask 255.255.255.0 gw 192.168.8.75 dev enp6s0这条命令是在PC3上添加一条路由,使得从PC3访问到192.168.9.0/24网段时通过网关192.168.8.75。
这样设置之后,从PC1访问PC3的通信路径应该是:PC1(192.168.9.117)-> PC2(192.168.9.118,作为网关)-> PC2(192.168.8.75)-> PC3(192.168.8.86)。此时,PC1应该可以访问PC3了。
文章评论