我现在想实现发送Tcp包,请问发送TCP数据包是不是一定要有两个程序。一个是客户端,一个是服务端。能不能不要服务端,直接编写代码由客户端发送tcp数据包到指定ip地址,并且还可以指定端口去发送。

解决方案 »

  1.   

    难道只有UDP可以实现这个功能吗?
    TCp协议可以不?
      

  2.   

    TCP 一样可以穿透NAT的,不过得看NAT类型, 没有UDP穿透NAT方便
    有的情况得另外准备一个中转服务器 
      

  3.   

    “我现在想实现发送Tcp包……”
    当然这只需要一个程序(发送端)就行了。
      

  4.   

    不一定要应用程序,可以开个web服务
      

  5.   


    做了很多服务端的开发后,觉得自己写,总是不如现成的webserver(apache、iis、...)来的稳定、高效
    所以,我就转向:client/webserver
    后端无须操心通信、稳定,只需写好isapi就行了
      

  6.   

    我是想做一个通过tcp协议来获得对某一个ip地址Tracert路径的一个程序。好比windows下就有一个Tracert命令。但这个命令使用的是ICMP包,很多网站时限制使用ICMP包的。比如我们Ping百度网站就ping不通,但是我们却可以浏览百度的网页。这可能就是因为使用的协议不同而造成的。所以我现在想换一个协议去获取Tracert路径。
      

  7.   

    这个需求啊,不如直接运行命令行的tracert,然后抓取它的stdout
      

  8.   

    可是我发现用普通的Tracert是无法去测试百度这样的网址的。百度的服务器那边貌似禁止了ICMP协议。所以我用Tracert在运行的到中途会失败。所以现在想改用Tcp协议。
      

  9.   

    楼主,用TCP指定端口去连接服务器是可以的,但这个指定的端口只是你自已电脑的端口,如果你在内网,这个端口要被换掉的,包括IP!!,但TCP是不能记录经过的路由器的IP和端口的,不然人家的ICMP协议就没有存在的意义了。
      

  10.   

    网上的确有实现该功能的软件,比如说TRACETCP 该工具可以通过tcp协议来获得对方指定ip地址的路由路径。您可以到网上下一个试一试
      

  11.   

    肯定要两个程序。呵呵,当然了,服务端程序可以利用系统自带的,譬如Ftp服务,web服务等,但原理上肯定是有服务程序,只不过这个服务程序系统已经给你装好了。
      

  12.   

    我在网上搜寻了一下,没有找到关于这方面的代码资料。后来听人说网上有这个tcp的代码不过是c语言写的。不知道可有人接触过这样的代码。