针对你问题的解答:
1.不增加线路的情况下,可以购买一些公司提供的双线的PROXY来解决.
2.接进了网通线路后可以直接设置写路由表来完成双线只能策略.使用命令行下的route add命令.
3.可以实现,但是还是需要一台机器或者直接在你的WEB服务器上用第2条的方法解决.
4.双WAN口的路由一般都写好的路由表,接上去就可以用了,应该也可以自己写.具体写法参见路由说明,都很简单的.
TCP协议:服务器端:tcp_server.c[cpp]viewplaincopyprint?#include#include#include#include#includeintmain(intargc,char*argv[]){intserver_sockfd//服务器端套接字intclient_sockfd//客户端套接字intlenstructsockaddr_inmy_addr//服务器网络地址结构体structsockaddr_inremote_addr//客户端网络地址结构体intsin_sizecharbuf[BUFSIZ]//数据传送的缓冲区memset(&my_addr,0,sizeof(my_addr))//数据初始化--清零my_addr.sin_family=AF_INET//设置为IP通信my_addr.sin_addr.s_addr=INADDR_ANY//服务器IP地址--允许连接到所有本地地址上my_addr.sin_port=htons(8000)//服务器端口号/*创建服务器端套接字--IPv4协议,面向连接通信,TCP协议*/if((server_sockfd=socket(PF_INET,SOCK_STREAM,0))0)){buf[len]='/0'printf("%s/n",buf)if(send(client_sockfd,buf,len,0)#include#include#include#includeintmain(intargc,char*argv[]){intserver_sockfd//服务器端套接字intclient_sockfd//客户端套接字intlenstructsockaddr_inmy_addr//服务器网络地址结构体structsockaddr_inremote_addr//客户端网络地址结构体intsin_sizecharbuf[BUFSIZ]//数据传送的缓冲区memset(&my_addr,0,sizeof(my_addr))//数据初始化--清零my_addr.sin_family=AF_INET//设置为IP通信my_addr.sin_addr.s_addr=INADDR_ANY//服务器IP地址--允许连接到所有本地地址上my_addr.sin_port=htons(8000)//服务器端口号/*创建服务器端套接字--IPv4协议,面向连接通信,TCP协议*/if((server_sockfd=socket(PF_INET,SOCK_STREAM,0))0)){buf[len]='/0'printf("%s/n",buf)if(send(client_sockfd,buf,len,0)#include#include#include#includeintmain(intargc,char*argv[]){intclient_sockfdintlenstructsockaddr_inremote_addr//服务器端网络地址结构体charbuf[BUFSIZ]//数据传送的缓冲区memset(&remote_addr,0,sizeof(remote_addr))//数据初始化--清零remote_addr.sin_family=AF_INET//设置为IP通信remote_addr.sin_addr.s_addr=inet_addr("127.0.0.1")//服务器IP地址remote_addr.sin_port=htons(8000)//服务器端口号/*创建客户端套接字--IPv4协议,面向连接通信,TCP协议*/if((client_sockfd=socket(PF_INET,SOCK_STREAM,0))#include#include#include#includeintmain(intargc,char*argv[]){intclient_sockfdintlenstructsockaddr_inremote_addr//服务器端网络地址结构体charbuf[BUFSIZ]//数据传送的缓冲区memset(&remote_addr,0,sizeof(remote_addr))//数据初始化--清零remote_addr.sin_family=AF_INET//设置为IP通信remote_addr.sin_addr.s_addr=inet_addr("127.0.0.1")//服务器IP地址remote_addr.sin_port=htons(8000)//服务器端口号/*创建客户端套接字--IPv4协议,面向连接通信,TCP协议*/if((client_sockfd=socket(PF_INET,SOCK_STREAM,0))#include#include#include#includeintmain(intargc,char*argv[]){intserver_sockfdintlenstructsockaddr_inmy_addr//服务器网络地址结构体structsockaddr_inremote_addr//客户端网络地址结构体intsin_sizecharbuf[BUFSIZ]//数据传送的缓冲区memset(&my_addr,0,sizeof(my_addr))//数据初始化--清零my_addr.sin_family=AF_INET//设置为IP通信my_addr.sin_addr.s_addr=INADDR_ANY//服务器IP地址--允许连接到所有本地地址上my_addr.sin_port=htons(8000)//服务器端口号/*创建服务器端套接字--IPv4协议,面向无连接通信,UDP协议*/if((server_sockfd=socket(PF_INET,SOCK_DGRAM,0))#include#include#include#includeintmain(intargc,char*argv[]){intserver_sockfdintlenstructsockaddr_inmy_addr//服务器网络地址结构体structsockaddr_inremote_addr//客户端网络地址结构体intsin_sizecharbuf[BUFSIZ]//数据传送的缓冲区memset(&my_addr,0,sizeof(my_addr))//数据初始化--清零my_addr.sin_family=AF_INET//设置为IP通信my_addr.sin_addr.s_addr=INADDR_ANY//服务器IP地址--允许连接到所有本地地址上my_addr.sin_port=htons(8000)//服务器端口号/*创建服务器端套接字--IPv4协议,面向无连接通信,UDP协议*/if((server_sockfd=socket(PF_INET,SOCK_DGRAM,0))<0){perror("socket")return1}/*将套接字绑定到服务器的网络地址上*/if(bind(server_sockfd,(structsockaddr*)&my_addr,sizeof(structsockaddr))<0){perror("bind")return1}sin_size=sizeof(structsockaddr_in)printf("waitingforapacket/n")/*接收客户端的数据并将其发送给客户端--recvfrom是无连接的*/if((len=recvfrom(server_sockfd,buf,BUFSIZ,0,(structsockaddr*)&remote_addr,&sin_size))<0){perror("recvfrom")return1}printf("receivedpacketfrom%s:/n",inet_ntoa(remote_addr.sin_addr))buf[len]='/0'printf("contents:%s/n",buf)close(server_sockfd)return0}欢迎分享,转载请注明来源:夏雨云
评论列表(0条)