如何将互联网路由到我所调用的接口 ppp0?

如何将互联网路由到我所调用的接口 ppp0?

我的情况是:

  • host1通过接口连接互联网eth0
  • host1拨号host2并与其建立PPP连接;
  • host2无法访问互联网;
  • host1需要host2使用此接口共享互联网连接ppp0

因此,我认为基本上我们有这样的:

(internet) <eth0> === host1 === <ppp0> === host2

这是来自host1

# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.17.0.2  netmask 255.255.0.0  broadcast 172.17.255.255
        ether 02:42:ac:11:00:02  txqueuelen 0  (Ethernet)
        RX packets 7409  bytes 29789661 (28.4 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 5933  bytes 422162 (412.2 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 28  bytes 2352 (2.2 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 28  bytes 2352 (2.2 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ppp0: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST>  mtu 1500
        inet 10.100.0.2  netmask 255.255.255.255  destination 10.100.0.1
        ppp  txqueuelen 3  (Point-to-Point Protocol)
        RX packets 5  bytes 78 (78.0 B)
        RX errors 2  dropped 0  overruns 0  frame 0
        TX packets 5  bytes 90 (90.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

这是来自host2

# ifconfig
lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0

ppp0      Link encap:Point-to-Point Protocol
          inet 10.100.0.1  P-t-P: 10.100.0.2 Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
          RX packets:5 errors:1 dropped:0 overruns:0 frame:0
          TX packets:3 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3

我尝试iptables按照建议使用在接口之间转发流量这里

我使用 gwhost2为 dev 添加了默认路由,即 的 ip 。ppp010.100.0.2host1

有什么建议吗?我真的不熟悉网络技术。

我认为最重要的评论是:

  • host1是调用者host2
  • host1可以做任何我想做的事,但是host2有一个只读文件系统,我只能添加路线和更改一些小东西;

答案1

这个设置有些棘手:

如果host1是充当 ppp 服务器的那个,那么问题就很容易解决了。只需配置 ppp 守护进程以将默认路由推送到客户端即可

但是由于host1是呼叫者,host2我不知道如何host1推动默认路由(并且手动设置它是不可接受的)除非......

对我来说,解决方案是使用路由协议进程(rip 或 ospf),以便当链接建立时,这些进程就适当的路由表达成一致

最后,NAT 必须包含所有使用的 IP 范围才能访问互联网

相关内容