Microsoft Proxy Server是微软公司推出的代理服务器软件产品,是代理服务器产品中的“ 新军”,目前升级叫ISA,面向Windows NT平台,可以实现与Windows NT及Internet In formation Server的无缝连接。Microsoft Proxy Server2.0需要以下系统软件,否则无法安装:Windows NT4.0(中/英版)、Microsoft Internet Informat ion Server2.0或更高版本、Windows NT4.0 Service Pack3或更高,而且必须有一个格式为NTFS的硬盘作为缓存(Cache)。Microsoft Proxy Server2.0也可以装在W indows2000 Server上,但是还得从微软的Web站点下载一个补丁。
使用此命令来将规则应用到接口上;如果要过滤从接口收上来的报文,则使用 in 关键字;如果要过滤从接口转发的报文,使用out 关键字。一个接口的一个方向上最多可以应用20类不同的规则;这些规则之间按照规则序号的大小进行排列,序号大的排在前面,也就是优先级高。对报文进行过滤时,将采用发现符合的规则即得出过滤结果的方法来加快过滤速度。所以,建议在配置规则时,尽量将对同一个网络配置的规则放在同一个序号的访问列表中;在同一个序号的访问列表中,规则之间的排列和选择顺序可以用show access-list命令来查看。
【举例】
将规则101应用于过滤从以太网口收上来的报文。
Quidway(config-if-Ethernet0)#ip access-group 101 in
gethostbyname函数
从主机名获取主机信息.
[声明]
struct hostent FAR * gethostbyname ( const char FAR *name );
[参数]
name - 指向主机名字符串的指针
[返回值]
当函数成功调用时返回主机信息
失败时返回NULL(空值)
---
recv函数
利用Socket进行接受数据.
[声明]
int recv ( SOCKET s , char FAR *buf , int len , int flags );
[参数]
s - 指向用Socket函数生成的Socket Descriptor
buf - 接受数据的缓冲区(数组)的指针
len - 缓冲区的大小
flag - 调用方式(MSG_PEEK 或 MSG_OOB)
[返回值]
成功时返回收到的字节数.
如果连接被中断则返回0
失败时返回 SOCKET_ERROR
---
sendto函数
发送数据.
[声明]
int sendto ( SOCKET s , const char FAR *buf , int len , int flags , const
struct sockaddr FAR *to , int token );
[参数]
s - 指向用Socket函数生成的Socket Descriptor
buf - 接受数据的缓冲区(数组)的指针
len - 缓冲区的大小
flag - 调用方式(MSG_DONTROUTE , MSG_OOB)
to - 指向发送方SOCKET地址的指针
token - 发送方SOCKET地址的大小
[返回值]
成功时返回已经发送的字节数.
失败时返回SOCKET_ERROR
ICMP.DLL API 现在在Windows平台上与微软的Winsocks工作的很好, 但是微软说更好的
产品一出来他们将替换它. 微软说这个自从Windows 95时代就在用, 这些功能在在Windo
ws 2000上仍然存在.
For more information on the ICMP.DLL API, check out sockets.com's ICMP API
page.
更详细的ICMP.DLL API的信息到sockets.com的ICMP API网页获取.
具体实现:
--------
// Borland C++ 5.0: bcc32.cpp ping.cpp
// Visual C++ 5.0: cl ping.cpp wsock32.lib
//
// This sample program is hereby placed in the public domain.
typedef struct {
unsigned char Ttl; // Time To Live
unsigned char Tos; // Type Of Service
unsigned char Flags; // IP header flags
unsigned char OptionsSize; // Size in bytes of options
data
unsigned char *OptionsData; // Pointer to options data
} IP_OPTION_INFORMATION, * PIP_OPTION_INFORMATION;
typedef struct {
DWORD Address; // Replying address
unsigned long Status; // Reply status
unsigned long RoundTripTime; // RTT in milliseconds
unsigned short DataSize; // Echo data size
unsigned short Reserved; // Reserved for system use
void *Data; // Pointer to the echo data
IP_OPTION_INFORMATION Options; // Reply options
} IP_ECHO_REPLY, * PIP_ECHO_REPLY;