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問題
這個可是軟體的配置文件,沒有別的辦法,再說,改一下配置文件又沒什麼麻煩的地方,用文本就能打開改