3

在过去的几天里,我一直在尝试构建和运行一个非常简单的网络,但无济于事(我尝试构建的大部分网络都是从 extServer 示例中借用的)。无论我在 IP 地址、路由等方面的配置如何,我似乎都无法使其工作。
我见过很多人为此苦苦挣扎,但没有在任何地方找到任何解决方案。INET 的 Emulation 文件夹中的自述文件更令人困惑而不是有用。因此,我希望您能帮助我完成以下简单的网络工作,并希望它(帖子)也能成为其他人的教程。

我想建立的网络(再简单不过了):

External Server <----> [ext0] ROUTER [ppp0] <----> [ppp0] Standard Host

我的设置:

  • 软件:

    • 启用 PCAP 的 OMNET++ 4.6。
    • INET 集成头(包括我喜欢的几个功能)。
  • 操作系统:

    • VirtualBox 中的 Xubuntu 作为托管 OMNET++ 的访客。使用 Virtualbox 的原因是我的 Host Win 7 机器拒绝运行任何外部接口示例,并出现错误“cSocketRTScheduler: could't set socketopt for raw socket.”。我稍微修改了源代码并使用了 WSAGetLastError 函数,该函数将问题解决为“请求的地址在其上下文中无效。”。

    • 回到 VirtualBox :) Xubuntu 有一个网络接口设置为仅主机网络,IP 地址为 10.0.0.1 和网络掩码 255.255.255.0 。

omn​​etpp.ini 中的标准主机设置:

**.server.numTcpApps = 1
**.server.tcpApp[*].typename = "TCPSinkApp"
**.server.tcpApp[*].localAddress = "172.0.1.111"
**.server.tcpApp[*].localPort = 10021

标准主机使用与 extServer 示例相同的 server.mrt。

router.mrt 如下:

ifconfig:
# interface 1 to server
name: ppp0
    inet_addr: 172.0.1.100
    Mask: 255.255.255.0
    MTU: 1500
    POINTTOPOINT MULTICAST

# interface 2 to external server (real network interface)
name: ext0
    inet_addr: 10.0.0.2
    Mask: 255.255.255.0
    MTU: 1500
    POINTTOPOINT MULTICAST
ifconfigend.

route:
#Destination     Gateway          Genmask          Flags  Metric  Iface
172.0.1.111      172.0.1.100      255.255.255.255  H      0       ppp0
10.0.0.1         10.0.0.2         255.255.255.255  H      0       ext0
0.0.0.0          *                0.0.0.0          G      0       ext0
routeend.

任何关于如何使这个网络工作的想法都非常受欢迎,因为如果它工作,我想稍后扩展它。此外,如果有任何建议采用分步方式,我将不胜感激。

先感谢您。

4

0 回答 0