【问题标题】:playing with tcp/ip玩 tcp/ip
【发布时间】:2011-08-16 08:47:14
【问题描述】:


我想学习和玩用于 python、java 或 c++ 的 tcp/ip 库。但是我只有一台电脑。是否可以“伪造”远程计算机来模拟远程主机,在 NAT 下结束一切?

【问题讨论】:

    标签: networking tcp network-programming ip


    【解决方案1】:

    您可以从在自己计算机上的程序之间进行通信开始。

    您可以使用 VirtualBox、VMWare、VirtualPC 等虚拟机软件在您的机器中创建本质上是第二台机器并与之对话(尽管网络拓扑可能非常不寻常 - 需要了解更多信息)

    如果你想与远程的东西交谈,你可以从亚马逊之类的公司租用一个运行 linux 或 windows 的小型云服务器,花几美分一小时,然后在上面安装你想要的任何东西。

    【讨论】:

      【解决方案2】:

      如果你使用的是linux,你可以配置dummy接口,然后将你的客户端/服务器绑定到不同的虚拟接口。

      [mpenning@Bucksnort ~]$ sudo modprobe dummy
      [mpenning@Bucksnort ~]$ sudo ip addr add 192.168.12.12/24 dev dummy0
      [mpenning@Bucksnort ~]$ ip addr show dummy0
      6: dummy0: <BROADCAST,NOARP> mtu 1500 qdisc noop state DOWN
          link/ether b6:6c:65:01:fc:ff brd ff:ff:ff:ff:ff:ff
          inet 192.168.12.12/24 scope global dummy0
      [mpenning@Bucksnort ~]$ ping 192.168.12.12
      PING 192.168.12.12 (192.168.12.12) 56(84) bytes of data.
      64 bytes from 192.168.12.12: icmp_seq=1 ttl=64 time=0.085 ms
      ^C
      --- 192.168.12.12 ping statistics ---
      1 packets transmitted, 1 received, 0% packet loss, time 0ms
      rtt min/avg/max/mdev = 0.085/0.085/0.085/0.000 ms
      [mpenning@Bucksnort ~]$ sudo modprobe dummy -o dummy1
      [mpenning@Bucksnort ~]$ sudo rmmod dummy
      [mpenning@Bucksnort ~]$ ip addr show dummy0
      Device "dummy0" does not exist.
      [mpenning@Bucksnort ~]$
      

      您应该能够像其他任何接口一样在这些接口上运行 ipchains。

      【讨论】:

        【解决方案3】:

        最简单的方法是在同一台计算机上运行服务器和客户端,并使用“环回”IP 地址:127.0.0.1,它始终连接到本地主机。我在测试期间已经多次这样做了。例如,在 NNN 端口上运行本地网络服务器,然后在浏览器中输入 http://127.0.0.1:NNN/ 实际上,127.X.Y.Z 应该始终与本地机器通信。

        【讨论】:

          【解决方案4】:

          使用虚拟机在您的系统中安装操作系统。对于任何网络应用程序,这是最好的。您不必在两个不同的系统上工作,并且很容易看到两端发生的事情

          【讨论】:

            【解决方案5】:

            运行到服务器以侦听您的网络适配器或本地主机。然后向相同的 IP 和端口发出请求。从逻辑上讲,这一切都发生在网络驱动程序中,但如果该 IP 地址被寻址到另一台机器(除非防火墙配置等),它的行为方式仍然相同

            【讨论】:

              猜你喜欢
              • 2015-10-07
              • 2014-06-17
              • 1970-01-01
              • 2011-05-25
              • 2015-10-25
              • 2019-03-30
              • 2012-11-22
              • 1970-01-01
              • 2011-09-13
              相关资源
              最近更新 更多