AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 1086415
Accepted
user4467097
user4467097
Asked: 2018-10-24 06:17:01 +0800 CST2018-10-24 06:17:01 +0800 CST 2018-10-24 06:17:01 +0800 CST

不使用 NAT 功能的 2 个有线接口之间的路由

  • 772

我有两个内部网络(我不想/无法访问 Internet),我在其中连接我的 Ubuntu 14.04(带有 eth0 和 eth1 网络接口)。从 eth0(网络 192.168.0.0)我直接连接另一台 PC1。除了来自 eth1(网络 10.1.1.0)之外,我还直接连接了另一台 PC2。无论方向如何,我都想从 PC1 ping 到 PC2,直到现在我都无法成功。

当前的 IP 配置为:

- Ubuntu-eth0 has 192.168.0.1
- PC1 has 192.168.0.2
- Ubuntu-eth1 has 10.1.1.1
- PC2 has 10.1.1.2

Ubuntu /etc/network/interfaces:

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
    address 192.168.0.1
    network 192.168.0.0
    netmask 255.255.255.0
    broadcast 192.168.0.255

auto eth1
iface eth1 inet static
    address 10.1.1.1
    network 10.1.1.0
    netmask 255.255.255.0
    broadcast 10.1.1.255

Ubuntu /etc/sysctl.conf 也有:

net.ipv4.ip_forward = 1

这是在终端中运行的:

~$ sudo iptables -A FORWARD  -i eth0 -o eth1 -j ACCEPT 
~$ sudo iptables -A FORWARD  -i eth1 -o eth0 -j ACCEPT 
~$ sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE 

使用此配置,我可以从 PC2 -> PC1 ping,但是当我启用 nat 功能时,我无法从 PC1 -> PC2 ping,而且 PC2 没有其真实 IP(如通过 PC1 中的 Wireshark 看到的)。

如何在没有 nat 功能的情况下建立通信渠道?我想要的结果是使用它们在目的地的真实 IP ping PC1 -> PC2 和 PC2 -> PC1。我已经关注了许多链接和教程,但还没有成功。

提前致谢。

networking iptables interface nat
  • 1 1 个回答
  • 1058 Views

1 个回答

  • Voted
  1. Best Answer
    vidarlo
    2018-10-24T06:21:36+08:002018-10-24T06:21:36+08:00

    不要跑

    sudo iptables -A FORWARD  -i eth0 -o eth1 -j ACCEPT 
    sudo iptables -A FORWARD  -i eth1 -o eth0 -j ACCEPT 
    sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
    

    只需像您所做的那样打开 IP 转发,net.ipv4.ip_forward = 1在/etc/sysctl.conf.

    • 0

相关问题

  • 如何将主机 Ubuntu 上的 VPN (tun0) 网络适配器映射到 VirtualBox 来宾 Windows?

  • 如何限制下载/上传带宽?

  • 如何通过 Windows 网络共享文件?

  • 面板小程序以文本形式显示当前网络流量?

  • iptables 的图形用户界面?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve