1. C#发送邮件错误: System.net.mail.smtpException;服务器提交了协议冲突 服务器响应为: .
try
{
client.Send(message);
}
catch (SmtpException e)
{
Console.WriteLine("Error: {0}", e.StatusCode);
}
finally
{
data.Dispose();
}
检查一下e.StatusCode是否是GeneralFailure
如果是可能是 你自己发送的邮件账号 有问题。比如账号不存。。。
2. 服务器提交了协议冲突. Section=ResponseStatusLine
config里配置一下就行了:
<system.net>
<settings>
<httpWebRequest useUnsafeHeaderParsing="true" />
</settings>
</system.net>
3. 服务器提交了协议冲突. Section=ResponseHeader Detail=“Content-Length”标题值无效
网上大部分都是在app.Config配置里设置useUnsafeHeaderParsing:
<?xml version="1.0"?>
<configuration>
<system.net>
<settings>
<httpWebRequest useUnsafeHeaderParsing="true" />
</settings>
</system.net>
</configuration>
这个方法证明可行,但是想了下,很多朋友都很不喜欢一个小小的程序因为这个事带上个配置文件,总感觉心里毛毛的。要是在程序里解决多好。于是乎又花了点时间,在一个国外的论坛里找到了解决方案,用了反射,直接操作System.Net.Configuration.SettingsSectionInternal类下的私有字段。虽然反射会带来性能上的影响,但是这里貌似没有更好的办法,因为不能操作一个封装好的私有变量。
4. 该服务器提交了HTTP协议ChongTu
基础连接已经关闭: 该服务器提交了 HTTP 协议冲突
这个通常在我们使用.net http协议组件访问 某些互联网url资源的时候发生。
但是发觉采用winhttp的封装来读取是没有问题的,正常返回的,但有托管的原生组件却去使用COM,总觉得不爽。但是却不知道问题到底出在那里?感觉,肯定同.net的http实现代码有关系,因为同一个url,COM组件的读取是正常的(COM时代已经经过了考验);但是,又不是所有的url出现类似故障,一般是大约一些动态的asp.net页面出现的概率比较大。
近日终于查出来了,微软有相关的KB讨论:
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=296969&SiteID=1
具体来说,就是在配置文件中加入
<configuration>
。。。。。。
<system.net>
<settings>
<httpWebRequest useUnsafeHeaderParsing="true" />
</settings>
</system.net>
</configuration>
原来是部分url的实现http协议可能会出现并非CRLF的结束部分,这个被实现较为严格的.net http协议组件所捕获,就出现题是错误,而实际上,这个大多数com时代的http协议组件是可以忽略的。为了让.net 的原生组件也忽略,就如上配置,覆盖系统的machine.config缺省设定。
5. 服务器犯了协议冲突。Section=ResponseStatusLine
微软没有容忍不符合RFC 822中的httpHeader必须以CRLF结束的规定的服务器响应。
通过修改配置文件解决:在app.config(WinForm)或web.config(Web)文件里修改。
WinForm下的app.config默认不存在,手动在Debug文件夹所在的同级目录下新建一个XML配置文件,内容为:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.net>
<settings>
<httpWebRequest useUnsafeHeaderParsing= "true " />
</settings>
</system.net>
</configuration>
编译以后会在Debug下面自动创建一个 程序名.exe.config 的配置文件
6. 服务器提交了协议冲突. Section=ResponseHeader Detail=CR 后面必须是 LF
服务器返回发信息不标准,指的是换行方式。看看你请求的时候HTTP协议版本是否正确,以及UserAgent是否正确。
7. 网络冲突是啥百科没有
主要原因是,你的网卡设置的IP与其它机子的一样,就会出现这样的问题呀!
解决办法是:
如果你的是XP系统,点“开始”,然后“设置”,进入“网络连接”,然后找到“本地连接”,鼠标在本地连接那里点右键,进入“属性”,是不是看到一个叫“TCP\IP”的东西呢?用鼠标双击“TCP\IP”,进入以后选择“自动获得IP地址”便可以了!
2000系统是,点“开始”,然后“设置”,进入“网络和拨号连接”,然后找到“本地连接”,鼠标在本地连接那里点右键,进入“属性”,是不是看到一个叫“TCP\IP”的东西呢?用鼠标双击“TCP\IP”,进入以后选择“自动获得IP地址”便可以了!
另一个办法就是,如果你是处于局域网,就是你们是很多部电脑连接在一起的那种,你可以按照上述方法,进入“TCP\IP”,看看“使用下面的IP地址”那里填的是什么内容,一般是×××.×××.×××.×××的,你只要把最后三位×××改一改便可以了,改的范围就1—255的数字。改了以后重新启动电脑一次,看看是否好了!不行就再改一次,我觉得比较后面的数字比较少人用!
最后一个办法就是,干脆把IP地址改成192.168.1.2,子掩码填255.255.255.0
这个说得太专业了,也许不怎么好理解.我相信上面的问题是属于校园局域网的IP冲突吧!我曾经也遇到过.解决问题的方法和简单:
1修改你的计算机名字,确保网络上没有和你重名的.
2修改你的IP地址,自定义IP:192.168.1.(*),*可以是2~255之间的任何数值.但是要确保*的数值是唯一的不能网络上其他电脑用同一个数值.子网掩码:255.255.255.0网关:192.168.1.1
一般都是这个.如果你有DNS你就还要设置你的 DNS就OK了!
设置完毕重启计算机问题解决! 解决校园网中的IP地址冲突的难题
随着校园网计算机数目的增加,IP地址冲突问题也越来越多。那么怎样解决校园网中的IP冲突呢?
做好网络规划记录好规划信息
1、给联网的计算机命名
[被屏蔽广告]
为了识别网络上的计算机,必须分别为它们起一个独一无二的名字。给计算机命名时,注意取一些有意义的名字,这样你一看到机器名,就能立即知道这台机器是哪个部门的,为以后使用共享资源带来方便。
2、给每台计算机分配一个IP地址
你可以给每台计算机分配一个固定的IP地址,也可以让系统自动获取一个IP地址(前提是网络中应有一台DHCP服务器)。
3、记录每块网卡的MAC地址
每一块网卡有惟一的MAC地址,这就为我们通过MAC地址寻找目标设备带来了方便。
4、记录好以上信息
把网络规划好后,还要把这些信息记录下来,形成一个表格,以便日后网络出现问题时,拿出来核对。
配置计算机名、IP地址、网卡的MAC地址
1、依次单击“开始→设置→控制面板→网络”,出现“网络”对话框,单击“标识”标签,即可填写你所操作的计算机在网络中的名字。
2、在“网络”对话框中单击“配置”标签,再单击“TCP/IP→属性”,在打开的对话框中填入你所分配的IP地址即可。
3、记录每台计算机上网卡的MAC地址:
在MS-DOS方式下,输入Ipconfig /all命令,其中会显示如下类似的信息:
Description : Realtek RTL8029(AS) Ethernet Adapt
图1
Physical Address: 00-00-B4-B0-B4-F1
DHCP Enabled : No
IP Address : 200.200.1.120
Subnet Mask : 255.255.255.0
Default Gateway :
可以看出此网卡的MAC地址为00-00-B4-B0-B4-F1。
4、在网络中的每一台计算机上都进行以上的操作,生成一张计算机名、IP地址、网卡MAC地址对照表备用。
动态监视网络中的IP地址变化
由于各客户机可自行修改IP地址,所以网络运行后各客户机的IP地址与一开始规划的可能就会不同,作为一名网管人员,还应动态地监视网络中的IP地址变化。可使用Windows系统提供的命令或使用工具软件来完成这个工作。
1、使用Nbtstat命令
使用这个命令可以让我们通过网络中的任一台计算机来查看网络中其他计算机的IP地址及网卡MAC地址。
用法是:Nbtstat -a远程计算机的名字。
则可显示出要测试的远程计算机的IP地址与MAC地址。如输入Nbtstat -a wjs318后,屏幕出现如下提示:
Node IpAddress:[200.200.1.118]
NetBIOS Remote Machine Name Table
……
MAC Address = 00-00-B4-B7-30-81
我们就可知道主机名为wjs318的计算机,其IP地址为200.200.1.118,其网卡的MAC地址为00-00-B4-B7- 30-81。
图2
2、使用工具软件来自动生成IP地址与MAC地址对应表
使用Nbtstat命令需要我们把网络中的机器一一测试,效率不高。可采用一些工具来快速地生成我们所需要的表格。Tamosoft公司的Essential NetTools软件就是这样的软件(下载地址:www.tamos.com/download/main)。
运行Essential NetTools后,出现如图1所示的窗口,单击左边一栏〔NBScan〕按钮,在左下角“Starting IP address”框中输入要扫描的开始IP地址,在“Ending IP address”中输入结束的IP地址,按〔Start〕按钮,经过一段时间后,屏幕上就会显示出扫描到的计算机名、IP地址及网卡的MAC地址。
通过执行File/Save Report/As HTML命令,还可把扫描到的结果保存为HTML文件,这样就不用我们再手工建立计算机名、IP地址和网卡MAC地址的对照表了。
解决IP地址冲突的问题
如果校园网中的两台计算机使用了同一个IP地址,即产生了IP地址冲突,那么就会在这两台机器上同时弹出与图2类似的对话框。
这时我们只要查一下最新的IP地址与MAC地址对照表,然后找到造成IP地址冲突的计算机(其网卡MAC地址为00:00:B4:B7:30:81),再依次单击“开始→设置→控制面板→网络→TCP/IP→属性”,出现“TCP/IP属性”对话框,单击“IP地址”标签,在其中填入一开始分配的IP地址,按〔确定〕按钮,即可解决IP地址冲突的问题。
方法2:
校园网IP地址冲突的分析及解决方案
--------------------------------------------------------------------------------
随着校园网应用的深入和终端用户的增加,在用户管理和安全管理上的问题凸现出来,其中乱设IP现象特别明显,使合法用户不能使用网络资源,造成网络工作不正常。解决IP冲突,实现用户的唯一性确定,成为维护网络健康、安全运行的重要任务。
一、IP地址与MAC地址的关系
IP地址是根据现在的IPv4标准指定的,不受硬件限制比较容易记忆的地址,长度4个字节。而 MAC地址却是用网卡的物理地址,保存在网卡的EPROM里面,与硬件有关系,比较难于记忆,长度为6个字节。
虽然在TCP/IP网络中,计算机往往需要设置IP地址后才能通讯,然而,实际上计算机之间的通讯并不是通过IP地址,而是借助于网卡的MAC地址。IP地址只是被用于查询欲通讯的目的计算机的MAC地址。
ARP协议是用来向对方的计算机、网络设备通知自己IP对应的MAC地址的。在计算机的 ARJ缓存中包含一个或多个表,用于存储IP地址及其经过解析的以太网MAC地址。一台计算机与另一台IP地址的计算机通讯后,在ARP缓存中会保留相应的MAC地址。所以,下次和同一个IP地址的计算机通讯,将不再查询MAC地址,而是直接引用缓存中的MAC地址。
在交换式网络中,交换机也维护一张MAC地址表,并根据MAC地址,将数据发送至目的计算机。
二、windows对IP地址冲突的自动检测过程
重复IP地址(plicate IP address)可以导致网络上的严重破坏,因而对重复IP地址的检测是Windows TCP/IP的一个重要特性。计算机启动时,首次初始化TCP/IP,广播ARP请求,以便为IP地址请求IP地址解析。如果另一个主机回答此ARP请求分组中的任何一个,就表示该主机已经在使用此IP地址。这称为重复地址测试(Dupli-cate Address Test,DAT)。检测到重复地址时,Windows计算机照样引导,但禁用此广播ARP请求的计算机上的重复IP地址,并显示一条IP地址冲突的错误信息。为修复其它计算机中的ARP缓存表可能出现的崩溃,发送ARP请求的计算机重新广播另外一个ARP,但用发送ARP应答的计算机的硬件地址填充ARP请求的源硬件地址(Hardware Address,HA)字段。此技术很有希望可以修复其它计算机的ARP缓存表的崩溃问题,以使正在使用该IP地址的计算机能够正常工作。
在网络监视器中设置一个捕获过滤器,使之仅捕获与IP相关的流量,指定捕获过滤器文件的名字为test.cap。下面通过捕获到的分组信息进行分析。正常情况下,计算机广播一个带有目标IP地址的ARP请求,其分组中包含以下字段:
Sender’s Hardware Address=0060083671DE
Sender’s Protocl Address=192.168.3.10
Target’s Hardware Address=000000000000
Target’s Protocol Address=192.168.3.18
ARP回答直接发送到ARP请求方,其分组中包含以下字段:
Sender’s Hardware Address=00A024ABDlE6 Answer)
Sender’s Protocol Address=192.168.3.18
Target’s Hardware Address=0060083671DE
Target’s Protocol Address=192.168.3.10
这样,发送ARP请求的计算机,找到了目标计算机的MAC址。计算机启动时,发送一个ARJ请求以解析自己的IP地址。其分组中包含以下字段:
Sender’s Hardware Address=0060083671DE
Sender’s Protocol Address=192.168.3.10
Target’s HardWare Address=000000000000
T明et’s ProtocolAddress=192.168.3.10
如果其它站没有设为192.168.3.10的IP地址,则没有ARP应答。当网络中存在一个重复IP地址为192.168.3.10,则此站会发送一个ARP应答。其分组中包含以下字段:
Sender’s Hardware Address=00A024ABDlE6 (/hnswer)
Sender's ProtocolAdd ress=192.168.3.10
Target’s Hardware Address=000000000000
Tagrgt’s Protocol Address=192.168.3.10
当一个站看到来自重复IP站的ARP应答时,此站在计算机屏幕上报告这一问题。在windows2000的系统日志上可查看到错误信息。
三、IP地址冲突的解决方案
通过IP地址与MAC地址绑定,MAC地址与交换机端口绑定,可有效地防止用户更改IP地址和MAC地址现象,较好地解决网络中IP冲突问题。
1.计算机IP地址与MAC绑定
ARP缓存表保存了MAC地址与IP地址之间的绑定,局域网用户通常通过代理服务的方式访问Internet,在代理服务器的ARP缓存表中保存了所有用户的MAC和IP信息。因此,可在代理服务器上将局域网用户的IP地址与MAC地址静态绑定,使得乱设IP址的计算机不能访问Internet。
在CMD方式下,键入以下命令:
ARP—s IP地址MAC地址
例:ARP—s192.168.3.1000—AB一4C一60—08—68 这样,就将静态IP地址192.168.3.10与网卡地址为00—AB—4C—60—08—68的计算机绑定在一起了,即使别人盗用您的IP地址192.168.3.10,也无法通过代理服务器上网。
另外,需要注意的是,通过“—s”参数添加的项属于静态项,不会造成ARP缓存超时。只有终止TCP/IP协议后再启动,这些项才会被删除。通常编辑一批处理文件,包含所有IP与MAC绑定的命令,当系统重启或终止TCP/IP协议后再启动时,运行该批处理文件即可。
2.交换机端口与MAC绑定
交换机工作在数据链路层的MAC子层,传输的是帧,通常用于连接两个或多个以太网段。交换机在接收到以太帧后,从以太帧的源MAC地址字段“逆向”学习到去源站的路径,并生成、完善和维护着一个MAC地址与端口的映射表,在这个表中记录着交换机每个端口绑定的MAC地址。交换机以帧中的目的地址查找MAC地址表各项,如有匹配项则按该表项指定的端口路径转发帧,如无相应表项则向除源端口以外的所有端口广播转发帧。帧中的源和目的地址都是物理地址,即MAC地址。
将交换机的MAC地址与端口绑定,终端用户如果擅自改动本机网卡的MAC地址,该机器的网络访问将因其MAC地址被交换机认定为非法而无法实现,自然也就不会对局域网造成干扰了。
以思科2950—A交换机为例、登录进入交换机,输入管理口令进入全局配置模式,键入命令:
(config) #mac—address—table static<MAC地址>vlan<VLAN号>interface<模块号/端口号表> 该命令可分配一个静态的MAC地址给某些端口,即使重自交换饥,这个地址也仍然会存在。从此。该端口只允许这个MAC地址对应的设备连接在该端口上送行通信。用户通过注册表等方式更改MAC地址后,交换机拒绝为其通信。
四、IP地址和MAC地址的获取
校园网IP地址可以由学校网络管理部门强制进行分配,但MAC地址必须从本机或借助一些软件获取。一是从本机获取。对于Windows98/Me,运行“winipcfg”,在对话框就可看到IP地址,而“适配器地址”就是网卡的MAC地址。对于windows NT/2000/XP,需在命令提示符下输入“ipconfig/all”,显示列表中的“Physical Address”就是MAC地址,“IP Address”就是IP地址。
二是通过一些网管软件获取。如“MAC扫描器”“NetSuper”等。另外在同一局域网内的,可以用ping IP或者ping主机名,然后用arp—a来获得其它计算机的MAC地址。
8. IP地址与网络上的系统有冲突是什么意思
IP地址产生冲突的原因:
IP地址相当于是每一台计算机唯一的身份证号码,就像每个人的身份证号码都不一样的,处于局域网的环境中,例如一台计算机的IP设置是192.168.1.100,而另外一台计算机的ip也设置成192.168.1.100,那么就会导致IP与其他系统冲突。
解决方法如下:
方法一:使用DHCP重新自动获取系统IP
首先在电脑“开始”——>“运行”——>“CMD”——>“ipconfig/all”命令来查看获取IP的方式。
然后点击确定,这里一定不能输入之前查看的IP地址(如:192.168.1.100)
9. c#抛出异常 服务器提交协议冲突 Section=ResponseStatusLine 求解决
asp.net 增强了安全性,对一些有危害的http 头进行了判断,比如url中有空格的情况,以帮助网站提高网络攻击的防御能力。如果你的http头中有一些ASP.NET 认为是有危害的信息,则会返回这个错误。
根本原因是微软没有容忍不符合RFC 822中的httpHeader必须以CRLF结束的规定的服务器响应。
解决办法是对web.config (app.config) 配置做一些调整
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.net>
<settings>
<httpWebRequest useUnsafeHeaderParsing= "true " />
</settings>
</system.net>
</configuration>
10. C# Winform的App.config问题
这个可是软件的配置文件,没有别的办法,再说,改一下配置文件又没什么麻烦的地方,用文本就能打开改