用VB写端口映射代码 越简单越好
Option Explicit
创新互联公司网站建设公司一直秉承“诚信做人,踏实做事”的原则,不欺瞒客户,是我们最起码的底线! 以服务为基础,以质量求生存,以技术求发展,成交一个客户多一个朋友!专注中小微企业官网定制,做网站、成都网站建设,塑造企业网络形象打造互联网企业效应。
Dim bMsg() As Byte
Private Sub Form_Load()
Dim strCTemp As String
Dim intCPTemp As Variant
'侦听端口
Winsock1.LocalPort = 2000
Winsock1.Listen
'向Sphere转发数据
Winsock2.RemoteHost = "127.0.0.1"
Winsock2.RemotePort = 2001
Winsock2.Connect
Do While Winsock2.State 7
If Winsock2.State = 9 Or Winsock2.State = 0 Then Winsock2.Close: Exit Do
Select Case Winsock2.State
Case 1
strCTemp = "已打开!"
Case 2
strCTemp = "正在侦听.."
Case 3
strCTemp = "与服务器连接挂起!"
Case 4
strCTemp = "正在识别主机.."
Case 5
strCTemp = "已识别主机!"
Case 6
strCTemp = "正在与服务器连接.."
Case 8
strCTemp = "同级人员正在关闭连接.."
Case 9
strCTemp = "出错"
Winsock2.Close
End Select
If Winsock2.State intCPTemp Then
intCPTemp = Winsock2.State vbCrLf
Text1.Text = Text1.Text strCTemp vbCrLf
End If
DoEvents
Loop
If Winsock2.State = 7 Then
Text1.Text = Text1.Text strCTemp "已成功连接上服务器..." vbCrLf
End If
End Sub
Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
If Winsock1.State sckClosed Then Winsock1.Close
Winsock1.Accept requestID
End Sub
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
ReDim bMsg(bytesTotal)
Winsock1.GetData bMsg
Text1.Text = Text1.Text bytesTotal vbCrLf
Text1.SelStart = Len(Text1.Text)
Winsock2.SendData bMsg
End Sub
Private Sub Winsock2_Error(ByVal Number As Integer, Description As String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, CancelDisplay As Boolean)
Text1.Text = Text1.Text "Winsock2出错!" vbCrLf
End Sub
Private Sub Winsock2_SendComplete()
Text1.Text = Text1.Text "向Sphere发送了数据.." vbCrLf
End Sub
Private Sub Winsock2_SendProgress(ByVal bytesSent As Long, ByVal bytesRemaining As Long)
Text1.Text = Text1.Text "向Sphere发送了" bytesSent "数据.." vbCrLf
End Sub
VB.net Socket
麻烦给我发下vb2010下Socket类的使用方法,最好是有代码。就是怎样实现同一台电脑上两个程序的通讯,1窗体有按钮,文本框,2窗体有文本框,当单机1窗体的按钮时该窗体文本框的内容在2窗体的文本框中显示。。。十万火急啊。 邮箱523484850@qq.com
VB将UDP端口映射到外网
别用 VB,直接用 防火墙 得了!
其实,最终 还是 在 路由器 或者 交换机 上实现
祝你顺利
如何用VB进行端口映射?
在网吧要在路由器上做端口映射,还有一种是直接打洞实现内网穿透,过程复杂...建议你自己架个公网的服务器,或者反向连接
关于端口映射
在"设置"页面点击"端口映射"后面的E按钮,进行相应的设置即可。
一、下面来介绍一下通过nat共享上网和利用nat来实现端口映射。
1、在windows2000server上,从管理工具中进入“路由和远程访问”(routingandremoteaccess)服务,在服务器上鼠标右击,-》“配置并启用路由和远程访问”
2、点“下一步”
3、选“internet连接服务器”,让内网主机可以通过这台服务器访问internet.(最好先配置好nat共享,让内网主机可以正常上网,不然的话,配好端口映射后再来配置nat共享就有点麻烦了,弄的不好nat还共享不了。)
4、选“设置有网络地址转换(nat)路由协议的路由器”,不要选“设置internet连接共享(ics)”.(ics与nat的区别在于使用的容易程度上,为了启用ics,只需要选择一个复选框就可以了,而为了启用nat,则需要更多的配置任务,此外,ics用于小型网络上的原因还在于:针对内部主机,它需要有一个固定的ip地址范围;针对与外部网络的通信,它被限制在单个公共ip地址上;它只允许单个内部网络接口。)
5、先在此说一下我的网络情况:internet连接192.200.200.3(也是个内部地址,没办法,铁通的网络不太好,网速不快,价钱又贵,我的命真苦啊)宿舍内连接192.168.0.1(宿舍里连有局域网,共4台电脑,其中一台上装了sambar5.1b5做的web服务器, web端口是80,待会就从外网(用192.200.200.55来替代)来访问这个192.168.0.2:80上的网页)这台nat主机上开通了 iis5.0,端口是80,用端口映射的办法把8081端口映射到内部主机192.168.0.2的80端口上。
6、在“路由和远程访问服务器安装向导”中选“internet连接”(就是连向internet的那个连接),点“下一步”。
7、选“完成”到此为止,nat共享设置也就完成了,内部的主机也能上网了。内部主机的网络设置如下:
ip地址范围是912.168.0.2~192.168.0.254,子网掩码为255.255.255.0,网关为192.168.0.1,dns为isp给的地址,我们的是211.98.xxx.xxx
二、利用nat来映射端口
1、添加nat协议。右击“常规”,-》“新路由选择协议”
2、在“新路由选择协议”中选择“网络地址转换(nat)”,点击“确定”
3、这样在“ip路由选择”中就多了一项“网络地址转换(nat)”
4、右击“网络地址转换(nat)”,添加“新接口”
5、在“网络地址转换(nat)的新接口”中选择“internet连接”(也就是连向internet的那个连接,可不要选错咯)
6、在“网络地址转换-internet连接属性”中选中“公用接口连接到internet”,复选“转换tcp/udp头(推荐)”
7、在“地址池“选项表里添加你需要提供端口重定向的起始地址与结束地址.(也就是你要拿出来搞端口映射的所有ip地址,一般情况下我们就一个ip地址,所以可以不用“地址池”不同之处后面再讲。
8、在“特殊端口“选项表里提供了你需要定向的数据连接协议(是tcp还是udp协议,如web和ftp就是tcp协议的),选准后“添加”
9、“添加特殊端口”,这里就是设置端口映射的核心了,把nat主机的哪个端口映射到内网主机的哪个端口就在这里设置,由于设有“地址池”,所以可以在“公网地址”中添上“地址池”中的任一地址,这里添的是“192.200.200.3”,也就是我的地址,如果你在前面没有设置“地址池”,那么在这个选项页中“在此地址池项”为灰色不可选,你只能选“在此接口”,也就是你只有一个公网ip地址,这比较适合只有一个ip的朋友,可以不用“地址池”,何必做多余的设置呢?假如有问题的话,还不是自找麻烦。“传入端口”就是别人从网外访问有公网ip的nat服务器的端口,这里设的为8080。“专用地址和传出地址”就是内部主机的ip地址和提供特殊服务的端口,这里是把192.200.200.3上的8080端口映射到192.168.0.2上的80端口。
这就是tcp协议端口的重定向,至于udp的定向页差不多,下图就是添加端口映射后的情况。
当前题目:vb.net端口映射,windows server 端口映射
网址分享:http://scyingshan.cn/article/hsgjee.html