Linux-網路管理

来源:https://www.cnblogs.com/yanjieli/archive/2018/08/29/9557198.html
-Advertisement-
Play Games

網路管理 一 基本網路配置 linux操作系統,乙太網卡用“eth”表示網卡;序號從零開始eth0代表到系統能夠識別的第一個網卡eth1....第2個網卡 查看網卡信息 查看網卡信息 查看當前系統所連接的所有網卡(包括已經驅動了和沒有驅動) 確認網線已經連接好,以eth0 為例 樣圖 ifconfi ...


網路管理

一 基本網路配置

linux操作系統,乙太網卡用“eth”表示網卡;序號從零開始
eth0代表到系統能夠識別的第一個網卡
eth1....第2個網卡

查看網卡信息

查看網卡信息

查看當前系統所連接的所有網卡(包括已經驅動了和沒有驅動)

# lspci | grep -i eth
01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 06)
03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)

確認網線已經連接好,以eth0 為例

# mii-tool eth0
eth0: negotiated 100baseTx-FD flow-control, link ok
link ok 網卡能夠被識別,並且接了有效的網線

# mii-tool eth1
SIOCGMIIPHY on 'eth1' failed: Invalid argument
網卡雖然能夠被識別(網卡已經被驅動了,但不能用:網卡配置錯誤,網線沒接等)

樣圖

ifconfig命令

1、ifconfig -a 查看所有網卡信息
2、ifconfig eth0 查看單個網卡信息
3、ifconfig eth0 192.168.1.122 netmask 255.255.255.0 臨時設定IP和掩碼(馬上生效,但是臨時生效,重啟服務或者重啟系統都失效)
4、ifconfig eth0:1 192.168.0.2 netmask 255.255.255.0 配置子介面

ifconfig eth0 down|up
ifdown eth0 |ifup eth0

 ping命令

 ping +IP地址 ctrl+c結束 測試是否兩台主機網路是否通
-c參數:ping幾次
cd /proc/sys/net/ipv4 
ls icmp_echo_ignore_all
0 代表關閉,1代表開啟。這裡只是暫時開啟忽略回顯。別人ping自己不顯示。[禁止ping]
echo 1 > icmp_echo_ignore_all 

 

NetworkManager服務

 NetworkManager作用:是redhat6自帶的檢測網路、自動連接網路的圖形化工具。NetworkManager 服務會幹擾網路配置,如:DNS經常會被刷掉。

service NetworkManager stop 臨時關閉
chkconfig NetworkManager off 開機不自動啟動

網路相關的配置文件

1) /etc/sysconfig/network-scripts/ifcfg-ethX 介面的網路配置文件 
2) /etc/sysconfig/network 網路全局配置文件
3)/etc/resolv.conf DNS解析文件
4)/etc/hosts 本地名稱解析文件,優先於DNS

配置靜態IP地址:
方法1:  setup/systen-config-network

方法2:vim /etc/sysconfig/network-scripts/ifcfg-eth0

device=eth0
type=Ethernet
onboot=yes
bootproto=none
ipadd=10.1.1.1
network=255.255.255.0
gateway=10.1.1.254
DEVICE=eth0         <-- 網卡名字
BOOTPROTO=static       <---- dhcp 動態獲取IP, none 根據其他選項決定動態還是靜態,static肯定是手工指定IP
NM_CONTROLLED=no          <---如果NetworkManager服務啟用,該網卡配置文件也不使用NetworkManager管理
ONBOOT=yes          <---- 網路服務啟動的時候,yes代表激活狀態 , no 代表禁用
TYPE=Ethernet
IPADDR=10.1.1.11        <-- IP 地址
NETMASK=255.255.255.0     <-- 子網掩碼
GATEWAY=10.1.1.1          <-- 預設網關
DNS1=10.1.1.1             <-- DNS 伺服器
HWADDR=14:da:e9:eb:a9:61  <---MAC地址
USERCTL=no           <---是否允許普通用戶啟動或者停止該網卡
IPV6INIT=no          <---是否在該網卡上啟動IPV6的功能
PEERDNS=yes          <---是否允許網卡在啟動時向DHCP伺服器查詢DNS信息,並自動覆蓋/etc/resolv.conf配置文件。

setup:

二 設定主機名

 完全規範的主機名:

web1.uplook.com

查看主機名

# hostname 或者 # uname -n

命令臨時設定或更改主機名(馬上生效,重啟系統就失效)

# hostname node7.upl.com

永久生效(需要下次重啟系統才生效)

# vim /etc/sysconfig/network
NETWORKING=yes       <----是否啟用網路功能(no: service network start 沒有任何回應)
HOSTNAME=node8.upl.com   <----找到HOSTNAME設定自己的主機名
GATEWAY=192.168.0.2      <----預設網關,如果和局部配置文件ifcfg-eth0衝突,則以局部為準

指定DNS

[root@node1 Desktop]# echo nameserver 10.1.1.254 > /etc/resolv.conf
[root@node1 Desktop]# cat /etc/resolv.conf 
nameserver 10.1.1.254
# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
10.1.1.1 node1.uplook.com node1
10.1.1.2 node2.uplook.com node2

網路故障排錯

判斷網卡是否能識別,是否接了有效的網線

# mii-tool   eth0
有可能明明連接了有效的網線,但是還是看不到link ok,可以先確定網卡配置文件是正確的,並且ONBOOT=yes ,然後重啟network服務(service network restart)

ping 127.0.0.1

通,代表系統能夠支持tcp/ip通信。
不通,原因: 相關驅動損壞或者沒有。防火牆iptables攔截了。

ping 網卡的IP

 假設eth0配置10.1.1.22
ping 10.1.1.22
 通,說明網卡是能夠正常工作

 不通,可能是網卡驅動工作不正常,或iptables防火牆問題。
 嘗試重啟網路服務

ping 網關

不通
原因: 網關有問題,或者IP衝突

解決方法:ping 同一個網段中其他IP,其他電腦 ping 網關

ping 外網(IP或功能變數名稱)

ping 外網IP
通,只能說明通信沒問題,網關是設定正確。
不通,很可能就是網關無法聯網
ping 功能變數名稱
如果連功能變數名稱對應的IP都無法返回,說明功能變數名稱解析失敗,原因:DNS設定有問題。

註意: 同一個網卡可以配置多個IP,多個不同網段或者相同網段的IP
但是,不同的網卡不能配置同一個網段IP

ethtool eth0 查看網卡的工作模式等信息

# ethtool eth0        --查看網卡的工作模式等信息

    Link partner advertised auto-negotiation: Yes
    Speed: 100Mb/s
    Duplex: Full

# ethtool -s eth0 speed 10 duplex half autoneg off    --改成10M/s的速率,半雙工,關閉自動協商

通過scp拷貝大文件,查看網速速率

# ethtool -s eth0 speed 100 duplex full autoneg on    --改成100M/s的速率,半雙工,開啟自動協商

ping的錯誤類型

network unreachable (網路不可達): 一般沒有設定正確的網關
unknow host xxxx : 設定DNS無效

Ping命令返回錯誤信息說明

1.Request timed out 這是大家經常碰到的提示信息,很多文章中說這是對方機器置了過濾ICMP數據包,從上面工作過程來看,這是不完全正確的,至少有下幾種情況。 (1) 對方已關機,或者網路上根本沒有這個地址:比如在上圖中主機A中PING 192.168.0.7 ,或者主機B關機了,在主機A中PING 192.168.0.5 都會得到超時的信息。 (2)對方與自己不在同一網段內,通過路由也無法找到對方,但有時對方確實是存在的,當然不存在也是返回超時的信息。 (3)對方確實存在,但設置了ICMP數據包過濾(比如防火牆設置)。 怎樣知道對方是存在,還是不存在呢,可以用帶參數 -a 的Ping命令探測對方,如果能得到對方的NETBIOS名稱,則說明對方是存在的,是有防火牆設置,如果得不到,多半是對方不存在或關機,或不在同一網段內。 (4)錯誤設置IP地址 正常情況下,一臺主機應該有一個網卡,一個IP地址,或多個網卡,多個IP地址(這些地址一定要處於不同的IP子網)。但如果一臺電腦的“撥號網路適配器”(相當於一塊軟網卡)的TCP/IP設置中,設置了一個與網卡IP地址處於同一子網的IP地址,這樣,在IP層協議看來,這台主機就有兩個不同的介面處於同一網段內。當從這台主機Ping其他的機器時,會存在這樣的問題: A.主機不知道將數據包發到哪個網路介面,因為有兩個網路介面都連接在同一網段。 B.主機不知道用哪個地址作為數據包的源地址。因此,從這台主機去Ping其他機器,IP層協議會無法處理,超時後,Ping 就會給出一個“超時無應答”的錯誤信息提示。但從其他主機Ping這台主機時,請求包從特定的網卡來,ICMP只須簡單地將目的、源地址互換,並更改一些標誌即可,ICMP應答包能順利發出,其他主機也就能成功Ping通這台機器了。

2.Destination host Unreachable (1) 對方與自己不在同一網段內,而自己又未設置預設的路由,比如上例中A機中不設定預設的路由,運行Ping192.168.0.1.4就會出現“Destination host Unreachable”。 (2)網線出了故障 這裡要說明一下“destination host unreachable”和 “time out”的區別,如果所經過的路由器的路由表中具有到達目標的路由,而目標因為其他原因不可到達,這時候會出現“time out”,如果路由表中連到達目標的路由都沒有,那就會出現“destination host unreachable”。

3.Bad IP address 這個信息表示您可能沒有連接到DNS伺服器,所以無法解析這個IP地址,也可能是IP地址不存在。 4.Source quench received 這個信息比較特殊,它出現的機率很少。它表示對方或中途的伺服器繁忙無法回應。

5.Unknown host——不知名主機 這種出錯信息的意思是,該遠程主機的名字不能被功能變數名稱伺服器(DNS)轉換成IP地址。故障原因可能是功能變數名稱伺服器有故障,或者其名字不正確,或者網路管理員的系統與遠程主機之間的通信線路有故障。

6.No answer——無響應 這種故障說明本地系統有一條通向中心主機的路由,但卻接收不到它發給該中心主機的任何信息。故障原因可能是下列之一:中心主機沒有工作;本地或中心主機網路配置不正確;本地或中心的路由器沒有工作;通信線路有故障;中心主機存在路由選擇問題。

7.Ping 127.0.0.1 127.0.0.1是本地迴圈地址.如果本地址無法Ping通,則表明本地機TCP/IP協議不能正常工作。

8.no rout to host 網卡工作不正常。

9.transmit failed,error code:10043 網卡驅動不正常。

10.unknown host name DNS配置不正確

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 前沿: 一般情況下,在我們做訪問許可權管理的時候,會把用戶的正確登錄後的基本信息保存在Session中,以後用戶每次請求頁面或介面數據的時候,拿到 Session中存儲的用戶基本信息,查看比較他有沒有登錄和能否訪問當前頁面。 Session的原理,也就是在伺服器端生成一個SessionID對應了存儲的 ...
  • 0.使用背景 因為現在的項目都是基於 .NET Core 的,但是某些需要調用第三方的 WebService 服務,故有了此文章。其基本思路是通過微軟提供的 Svcutil 工具生成代理類,然後通過 System.ServiceModel 來調用代理類所提供的對象與方法。 1.配置準備 1.1 新建 ...
  • 1. 批量插入 public async Task CreateBusinessItemAsync(IEnumerable<BusinessItemsEntity> businessItemsEntities) { var bizid = businessItemsEntities.First(). ...
  • 1 在主視窗中實例化子視窗 在主視窗中實例化子視窗,而不是在按鈕中實例化子視窗對象。 2 通過按鈕來顯示主視窗 在按鈕中需要實現的是視窗的顯示 3 關閉子視窗而不釋放子視窗對象的方法 4 在父視窗關閉時銷毀子視窗對象 由於需要在父視窗關閉是銷毀子視窗對象,因此,在父視窗的關閉動作FormClosed ...
  • 1 namespace RemoveTheSame 2 { 3 class Program 4 { 5 static void Main(string[] args) 6 { 7 List list = new List() 8 { 9 new Use... ...
  • [TOC] CVE 2018 8120 分析 1、實驗環境 1.1、操作系統 windows 7 sp1 x86 未打補丁 "磁力鏈接" 1.2、用到的分析工具 windbg 32位 "下載地址" IDA pro 7.0 "正版鏈接" PCHunter "下載地址" ProcessHacker "下 ...
  • 1.什麼是進程的內核棧? 在內核態(比如應用進程執行系統調用)時,進程運行需要自己的堆棧信息(不是原用戶空間中的棧),而是使用內核空間中的棧,這個棧就是進程的內核棧 2.進程的內核棧在電腦中是如何描述的? linux中進程使用task_struct數據結構描述,其中有一個stack指針 task_ ...
  • 一、 進程創建: Unix 下的進程創建很特別,與許多其他操作系統不同,它分兩步操作來創建和執行進程: fork() 和 exec() 。首先,fork() 通過拷貝當前進程創建一個子進程;然後,exec() 函數負責讀取可執行文件並將其載入地址空間開始運行。 1、fork() :kernel/fo ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...