linux網路測試(必會)

2022-07-28 12:21:32 字數 4269 閱讀 6521

一、網路及服務故障的排查思路:

第一步:查一下路徑通不通

ping -c3 -i2 -s512 www.cnblogs.com icmp 協議是否禁止

-c:次數   -i:時間間隔    -s:發包大小

tranceroute www.cnblogs.com       檢視各個節點是否暢通

telnet www.blogs.com 80     檢查伺服器web有沒有開啟,服務開沒開,以及防火牆有沒有擋住。

如果命令卡在第一行表示不通,卡在第二行表示通。

綜上,如果不通:

1.80服務沒開或埠不存在。

2.服務被防火牆擋住了。

3.服務監聽的埠不在連線的ip上。(連線被限定了ip)

例:#netstat -lntup | grep ssh

0.0.0.0表示任意的ip位址都可以連線我的埠,也就是說我的服務並沒有限制訪問的ip;

如果是192.168.1.0:22則只限定了192.168.1.0的網段才能夠ssh連線我的埠。

4.運營商預設不開,申請開端口。

二、如果區域網的某個機器無法上網

1.單機器無法上網

如果通,但不能上網,可能是瀏覽器,中毒等問題。

(2)ping 閘道器(目的是排除物理鏈路的問題)

(3)上網的路由器及isp線路問題

2.大面積不能上網

路由器,isp,交換機環路,核心交換機,arp病毒。

三、客戶端開啟的**慢,如何排查?

(一)使用者個例還是全部如此,如果全部如此,那麼:

(1)道路是否暢通的問題

如果能ping通,不丟包,就是伺服器有問題(伺服器宕機或過載)

如果能ping通,但丟包,就是機房問題(頻寬不穩定,各個線路不穩定)

traceroute -d (linux)

tracert -d (windows)

-d:禁止反向解析(速度快)

(2)機房業務是否ok

nmap www.baidu.com -p 80      掃瞄埠

curl www.baidu.com 或 wget www.baidu.com

(3)外部問題

a、google瀏覽器直接按f12

b、火狐 fire bug等

【沒有錯誤,只是有點警告】

【有錯誤,讓開發看看是不是錯誤導致的】

(4)集群架構問題

四、合格的linux運維必會

1.tcp/ip協議三次握手和四次斷開的過程

2.http協議的工作原理

1)位址解析

如客戶端瀏覽:http://zhuji:8080/index.html

協議名:http         主機名:zhuji        埠:8080          物件路徑:/index.html

在這一步需要網域名稱系統dns解析網域名稱zhuji.com 得到主機的ip位址。

2)封裝http請求資料報、

把第一步的解析結果在結合自己本機的資訊,封裝成乙個http請求資料報。

3)封裝成tcp包,建立tcp連線

tcp的三次握手

4)客戶機傳送請求命令

建立連線後,客戶機傳送乙個請求給伺服器,請求方式的格式為:統一資源識別符號(url)、協議版本號,後邊是mime資訊包括請求修飾符,客戶機資訊許可內容。

5)伺服器響應

6)伺服器關閉tcp連線

一般情況下,一旦web伺服器向瀏覽器傳送了請求資料,它就要關閉tcp連線,然後如果瀏覽器或者伺服器在其頭資訊加入了這行**connection:keep-alive。tcp連線在傳送後將                              仍然保持開啟狀態,於是,瀏覽器可以繼續通過相同的連線傳送請求。保持連線節省了為每個請求建立連線所需要的時間,還節約了網路頻寬。

3.機器無法上網(詳見上方)

4.**開啟慢(詳見上方)

5.dns解析原理

如果hosts裡沒有這個網域名稱的對映,則查詢本地dns解析器快取,是否有這個**對映關係,如果有,直接返回,完成網域名稱解析。

如果hosts與本地dns解析器快取都沒有相應的**對映關係,首先會找tcp/ip引數中設定的首選dns伺服器,在此我們叫它本地dns伺服器,此伺服器收到查詢時,如果要查詢的網域名稱,包含在本地配置區域資源中,則返回解析結果給客戶機,完成網域名稱解析,此解析具有權威性。

如果用的是**模式,此dns伺服器就會把請求**至上一級dns伺服器,由上一級伺服器進行解析,上一級伺服器如果不能解析,或找根dns或把**請求轉至上上級,以此迴圈。不管是本地dns伺服器用的是**,還是根提示,最後都是把結果返回給本地dns伺服器,由此dns伺服器再返回給客戶機。

6.osi七層網路模型

7.route如何新增乙個網路路由

新增到主機的路由:

# route add –host 192.168.1.10 dev eth0

# route add –host 192.168.1.10 gw 192.168.1.1

新增到網路的路由:

# route add –net 192.168.1.0  netmask 255.255.255.0 eth0

# route add –net 192.168.1.0  netmask 255.255.255.0 gw 192.168.1.1

# route add –net 192.168.1.0/24 eth1

新增預設閘道器:

# route add default gw 192.168.1.1

刪除路由:

# route del –host 192.168.1.10 dev eth0

新增永久路由方法:

方法一:

# vi /etc/rc.local(新增到末尾)

語句: route add -net 192.168.3.0/24 dev eth0

route add -net 192.168.2.0/24 gw 192.168.2.254

方法二:

# vi /etc/sysconfig/network (新增到末尾)

語句:gateway=gw-ip 或者 gateway=gw-dev

方法三:

# vi /etc/sysconfig/static-routes (沒有static-routes的話就手動建立乙個這樣的檔案)

語句:any net 192.168.3.0/24 gw 192.168.3.254

any net 10.250.228.128 netmask 255.255.255.192 gw 10.250.228.129

方法四:

開啟 ip **:# echo "1" >/proc/sys/net/ipv4/ip_forward (臨時)

# vi /etc/sysctl.conf --> net.ipv4.ip_forward=1 (永久開啟)

8.如何檢視已知埠對應的服務名:

根據埠號查詢對應的服務名

1)grep -w 埠號 /etc/services

2)grep "\b埠號\b" /etc/services

根據服務名查詢對應的埠號

1)grep -w 服務名 /etc/services

2)grep "\b服務名\b" /etc/services

其中-w表示只顯示全字符合的列,即精確匹配;"\b"表示匹配乙個字邊界,即字與空格間的位置。例如,「er\b」匹配「never」中的「er」,但不匹配「verb」中的「er」(若匹配「verb」中的「er」可                                                使用"\b"進行非字邊界匹配)。

網路基礎總結必會

tcp 面向連線 可靠 速度慢 長度不受限 全雙工 流式傳輸 檔案傳輸 郵件 實時通訊 三次握手 記那張圖 syn ack accept connect 1.三次握手是tcp協議建立連線的過程 2.由客戶端發起乙個syn請求,服務端接收並回覆 syn ack 客戶端收到ack和syn之後再回覆乙個a...

linux必會命令

一 功能鍵 ctrl u 快捷鍵 快速刪除游標之前的所有字元內容 ctrl k 快捷鍵 快速刪除從點前游標處到行尾的所有字元 ctrl l 快捷鍵 快速清空螢幕顯示 ctrl c 快捷鍵 取消當前命令tab 鍵補全鍵 man help,info 顯示資訊名稱 顯示幫助資訊 注 一般man用的比較多,...

Linux網路測試命令

ping ip 網域名稱 可選 c 次數 聯通測試 telnet 網域名稱或ip 埠 遠端管理與埠探測命令 例如 telnet 192.168.0.252 80 如果連線成功,將會進入連線狀態,按ctrl 推出到telnet,在鍵入quit返回命令列狀態。traceroute ip 網域名稱 路由路...