成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Linux網絡故障排查總結

企業動態
本文主要針對服務器,使用命令行進行網絡故障排除,沒有類似圖形界面network-manager工具。事實上,在ubuntu桌面版,我習慣把network-manager工具禁掉。

 [[186463]]

0.前言

不管使用什么操作系統,使用物理機還是虛擬機,甚至容器,網絡往往都是最難解決的疑難雜癥,我們經常由于各種不明原因導致網絡不通。網絡故障可能是運營商或者鏈路問題,也有可能是本地故障,比如網卡配置錯誤等。解決網絡故障,通常需要掌握非常多的網絡知識,比如網絡協議、路由、NAT、網卡配置等。本文不在于細講這些知識,僅僅總結我在Linux操作系統(使用更多的當然是ubuntu系統)中著手解決網絡故障的過程和思路。注意,本文主要針對服務器,使用命令行進行網絡故障排除,沒有類似圖形界面network-manager工具。事實上,在ubuntu桌面版,我習慣把network-manager工具禁掉。

1.檢查網絡設備

要能連網,網絡設備首先必須保證處于工作狀態,如果網卡沒有開啟,則肯定不能上網的,假設我們使用eth0網卡上網,首先檢查該網卡是否處于up狀態,使用ip命令:

  1. sudo ip link ls eth0 

輸出:

  1. fgp@ubuntu:~$ sudo ip link ls eth0 
  2. 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000 
  3.     link/ether 08:00:27:c9:b4:f2 brd ff:ff:ff:ff:ff:ff 

state必須處于up狀態,若處于down狀態,嘗試手動啟動:

  1. sudo ip link set eth0 up 

或者:

  1. sudo ifconfig eth0 up 

手動啟動后,需要再次運行sudo ip link ls,如果仍然處于down狀態,則說明是網絡硬件問題,比如網線沒有連接好,或者鏈路不通等。如果大家都能上網,極有可能是由于網線接觸不良導致的,拔下網線重新插好,重復以上工作試試。

2.檢查IP地址

如果網卡已經處于up狀態,但仍無法上網,則需要查看網卡是否配置好ip地址:

  1. sudo ifconfig eth0 

或者

  1. sudo ip addr ls eth0 

輸出為:

  1. 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 
  2.     link/ether 08:00:27:c9:b4:f2 brd ff:ff:ff:ff:ff:ff 
  3.     inet 192.168.1.105/24 brd 192.168.1.255 scope global eth0 
  4.        valid_lft forever preferred_lft forever 
  5.     inet6 fe80::a00:27ff:fec9:b4f2/64 scope link 
  6.        valid_lft forever preferred_lft forever 

以上說明網卡已經獲取了ip地址,地址為192.168.1.105/24,如果輸出為:

  1. 3: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 
  2.     link/ether 08:00:27:9a:d5:d1 brd ff:ff:ff:ff:ff:ff 
  3.     inet6 fe80::a00:27ff:fe9a:d5d1/64 scope link 
  4.        valid_lft forever preferred_lft forever 

則說明該網卡沒有正確獲取IP。

如果沒有或者ip,就需要配置ip。如果是通過dhcp服務自動獲取ip的,則可手動運行dhclint獲取ip:

  1. sudo dhclient -4 -v eth0 

如果無法獲取ip,且網卡處于up狀態,則可能是鏈路問題,無法連接遠程DHCP服務器。如果知道DHCP服務器地址,可以ping一下試試,比如DHCP服務器地址為192.168.1.1:

  1. ping 192.168.1.1 

如果ICMP被禁了,使用nc命令或者telnet更適合,且可以探測端口是否開放,雖然DHCP端口是67,不過通常DHCP和DNS服務器是同一臺機器,因此順便測試53端口:

  1. nc -zv 192.168.1.1 67 
  2. nc -zv 192.168.1.1 53 
  3. # telnet 192.168.1.1 67 
  4. # telnet 192.168.1.1 53 

如果服務器的IP不是通過DHCP獲取的動態IP,而是靜態IP,則需要手動設置IP地址,使用ifconfig配置:

  1. sudo ifconfig eth0 192.168.1.105/24 gw 192.168.1.1 

或者

  1. sudo ip addr add 172.16.0.2/24 dev eth0 
  2. sudo route add default gw 172.16.0.1 dev eth0 

到此,需要重新運行ip addr ls或者ifconfig命令再次檢查是否ip配置正確。

3.配置網關和路由

如果網卡的IP已經配置正確(包括子網掩碼),仍然不能上網,則需要檢查能否ping通網關地址,通常網關地址為網絡地址的第一個ip或者最后一個ip,比如若ip為192.168.1.101/24,則網關通常為192.168.1.1或者192.168.1.254,如果不是二者,則需要詢問網管了。假設網關地址為192.168.1.1,ping一下是否通:

  1. ping 192.168.1.1 

如果ping不通,則可能是交換機問題。如果網關連通性良好,則查看路由表是否正確,以下三個命令都可查看路由表,隨便使用一個:

  1. sudo route -n 
  2. sudo netstat -rn 
  3. sudo ip route ls 

輸出為:

  1. fgp@ubuntu:~$ sudo route -n 
  2. Kernel IP routing table 
  3. Destination     Gateway         Genmask         Flags Metric Ref    Use Iface 
  4. 0.0.0.0         192.168.1.1     0.0.0.0         UG    0      0        0 eth0 
  5. 192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0 

其中Genmask為0.0.0.0的是默認路由,檢查Gateway是否正確。不正確的話需要重新修改默認網關:

  1. sudo route del default eth0 # 先刪除錯誤的默認網關 
  2. sudo route add default gw 172.16.0.1 dev eth1 # 填寫正確的網關 

此時可以ping一下外網ip(指不在同一個局域網的IP),注意這里不要用域名,因為可能DNS還是有問題,比如可以ping我們校園網認證服務器IP:10.3.8.211:

  1. ping 10.3.8.211 

如果不能連通外網,可以使用tracepath命令查看到底是哪一跳不通,不過我更喜歡mtr命令:

  1. mtr -n 8.8.8.8 

輸出為:

其中host列是所有經過的跳(路由),可以查看哪個跳不通或者丟包嚴重。

4.域名解析

如果能夠ping通外網,但仍然不能使用瀏覽器上網,那八成是域名解析不了了,即DNS服務器配置有錯誤。檢查下:

  1. nslookup server 

此時會輸出DNS服務器地址,檢查是否正確,若不正確或者不存在,可以臨時設置,修改/etc/resolve.conf文件,設置可用的DNS服務器,如果不知道本區的DNS服務器,可以設置通用的`8.8.8.8,可以同時設置多個DNS服務器:

  1. # /etc/resolve.conf 
  2. Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) 
  3. #     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN 
  4. nameserver 219.239.26.42 
  5. nameserver 124.207.160.106 
  6. nameserver 8.8.8.8 
  7. search DHCP HOST 

設置完成后,試一下能不能解析域名:

  1. nslookup baidu.com 

如果能夠解析域名,則應該就可以正常上網了。

5.寫入配置文件

我們以上都是通過命令行的方式配置網絡,服務器重啟后,需要重新配置,如果需要保存狀態,需要寫到配置文件中去,以ubuntu為例,修改/etc/network/interfaces文件,如果是DHCP 動態ip,配置如下:

  1. # The primary network interface 
  2. auto eth0 # 設置網卡開機啟動 
  3. iface eth0 inet dhcp # 設置網卡動態獲取IP 

如果是靜態IP,則配置如下:

  1. auto eth0 
  2. iface eth0 inet static # 設為靜態獲取ip 
  3. address 192.168.1.101 # 配置ip地址 
  4. netmask 255.255.255.0 # 設置子網掩碼 
  5. gateway 192.168.1.1 # 設置網關 
  6. dns-nameservers 8.8.8.8 114.114.114.114 # 設置DNS服務器,多個地址空格隔開 

總結

網絡通常是一個反反復復的棘手問題,除了以上提到的經典問題外,其他配置比如代理、防火墻、VPN、認證等,也有可能導致不能正常上網,務必配置正確,本文不再介紹。還有更棘手的比如mtu設置不正確(比如Openstack neutron使用gre隧道,注意設置mtu為1400)、病毒劫持等,遇到此類問題,可以試試tcpdump命令進行抓包分析。

【本文是51CTO專欄作者“付廣平”的原創文章,如需轉載請通過51CTO獲得聯系】

戳這里,看該作者更多好文

責任編輯:武曉燕 來源: 51CTO專欄
相關推薦

2023-11-10 07:23:57

Kubernetes集群網絡

2010-09-16 14:30:26

無線網絡故障

2010-09-25 13:52:11

無線網絡故障排查

2011-01-24 13:42:27

網絡故障網絡故障修復

2018-08-08 15:35:42

網絡故障網絡異常網絡報錯

2022-04-18 09:07:54

Linux網絡延遲

2015-08-24 11:02:56

網絡故障負載均衡

2010-08-31 09:17:17

2010-08-05 09:46:54

2019-04-11 09:17:14

網絡故障路由匯總

2009-05-19 16:40:41

TTL網絡故障科來軟件

2018-09-10 05:03:51

網絡故障故障排查運維

2010-09-07 09:35:22

2010-04-19 13:50:20

XP系統無線網絡故障

2011-03-14 14:13:28

網絡故障

2009-12-25 10:31:31

Linux網絡故障

2010-04-19 13:31:29

無線網絡故障

2013-04-07 13:47:12

2010-08-26 15:11:19

2012-02-08 15:54:40

IP網絡故障
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 在线观看成年人视频 | 亚洲精品黄 | 久久国产精彩视频 | 毛片免费看的 | 精品在线观看一区 | 在线看av的网址 | 嫩草视频网 | 在线欧美a | 中文字幕在线免费观看 | 亚洲精彩视频 | 亚卅毛片| 中文字幕亚洲无线 | 成人超碰在线 | 91精品国产高清一区二区三区 | 人人玩人人添人人澡欧美 | 欧美精品久久久 | 国产三级| 在线免费观看成年人视频 | 婷婷久久综合 | 久久中文视频 | 欧美国产精品一区二区三区 | 国产欧美日韩在线一区 | 狠狠的操 | 无毛av | 91久久精品日日躁夜夜躁国产 | 美女视频一区 | 97精品超碰一区二区三区 | 日韩欧美中文 | 久久国产免费看 | 日韩一区二区免费视频 | 一区二区福利视频 | 久在线 | 午夜成人免费视频 | 日韩精品一区二区三区在线播放 | xnxx 日本免费 | 精品国产精品 | 国产在线高清 | 国产精品久久久久久久久久免费 | 午夜精品在线 | 亚洲欧美成人影院 | 久草高清视频 |