linux聯網命令
❶ linux關於網卡的幾個命令
一、Linux網路屬性配置
1.Linux主機接入到網路方式
IP/NETMASK:實現本地網路通信
路由(網關):可以進行跨網路通信
DNS伺服器地址:基於主機名的通信,Linux可以有三個DNS地址
當第一個地址本身掛了,才會查找其備用地址;若第一個地址無法解析則停止
2.網路屬性配置方式
(1)靜態指定
1)命令方式
ifcfg系列命令:
ifconfig:配置IP,NETMASK
route:配置路由相關信息
netstat:狀態及統計數據查看
iiproute2系列命令:
ip OBJECT:
addr:地址和掩碼;
link:介面
route:路由
ss:狀態及統計數據查看
CentOS 7:nm(Network Manager)家族
nmcli:命令行工具
nmtui:text window 工具
hostname/hostnamectl:主機名配置
2) 配置文件:
RedHat及相關發行版:/etc/sysconfig/network-scripts/ifcfg-NETCARD_NAME
DNS伺服器指定配置文件:/etc/resolv.conf
本地主機名配置文件:/etc/sysconfig/network
註:命令配置能及時生效,但時關閉當前進程之後配置失效,為一次性配置方式
通過配置文件配置網路屬性,無法立即生效,需要重啟服務、重新載入配置文件或者重啟進程
(2)動態分配:依賴於本地網路中有DHCP服務
DHCP:Dynamic Host Configure Procotol, 動態主機配置協議,此時不能固定IP地址
3.網路介面命名
(1)傳統命名
乙太網:eth#,例如eth0, eth1, …
PPP網路:ppp#, 例如,ppp0, ppp1, …
(2)可預測命名方案(CentOS 7)
支持多種不同的命名機制,根據Fireware, 拓撲結構等信息自動配置
1) Firmware或BIOS為主板上集成的設備提供的索引信息可用,則根據此索引進行命名,如eno1,eno2, …
2) Firmware或BIOS為PCI-E擴展槽所提供的索引信息可用,且可預測,則根據此索引進行命名,如ens1, ens2, …
3) 如果硬體介面的物理位置信息可用,則根據此信息命名,如enp2s0, …
4) 如果用戶顯式定義,也可根據MAC地址命名,例如eno16777736(十六進制MAC), …
5)上述均不可用,則仍使用傳統方式命名;
(3)命名格式的組成
en:ethernet,表示網際網路網卡介面
wl:wlan,表示無線網網卡介面
ww:wwan,Wireless Wide Area Network,表示無線廣域網網卡
(4)名稱類型:
o<index>:集成設備的設備索引號;
s<slot>:擴展槽的索引號;
x<MAC>:基於MAC地址的命名;
p<bus>s<slot>:基於匯流排及槽的拓撲結構進行命名;
❷ 關於Linux下必須知道的11個網路命令有哪些
以下羅列一些非常有用的網路命令(不止11個)
連通性
• ping <host>:發送 ICMP echo 消息(一個包)到主機。這可能會不停地發送直到你按下 Control-C,Ping 的通意味著一個包從你的機器通過 ICMP 發送出去,並在 IP 層回顯。Ping 告訴你另一個主機是否在運行。
• telnet <host> [port]:與主機在指定的埠通信。默認的 telnet 埠是 23。按 Control-] 以退出 telnet。其它一些常用的埠是:
7 —— echo 埠
25 —— SMTP,用於發送郵件
79 —— Finger (LCTT 譯註:維基網路 - Finger protocal,不過舉例 Finger 恐怕不合時宜,倒不如試試 80?),提供該網路下其它用戶的信息。
ARP
ARP 用於將 IP 地址轉換為乙太網地址。root 用戶可以添加和刪除 ARP 記錄。當 ARP
記錄被污染或者錯誤時,刪除它們會有用。root 顯式添加的 ARP 記錄是永久的 —— 代理設置的也是。ARP
表保存在內核中,動態地被操作。ARP 記錄會被緩存,通常在 20 分鍾後失效並被刪除。
• arp -a:列印 ARP 表。
• arp -s <ip_address> <mac_address> [pub]:添加一條記錄到表中。
• arp -a -d:刪除 ARP 表中的所有記錄。
路由
• netstat -r:列印路由表。路由表保存在內核中,用於 IP 層把包路由到非本地網路。
• route add:route: 用於向路由表添加靜態(手動指定而非動態)路由路徑。所有從該 PC 到那個 IP/子網的流量都會經由指定的網關 IP。它也可以用來設置一個默認路由。
例如,在 IP/子網處使用 0.0.0.0,就可以發送所有包到特定的網關。
• routed:控制動態路由的 BSD 守護程序。開機時啟動。它運行 RIP 路由協議。只有 root 用戶可用。沒有 root 許可權你不能運行它。
• gated:gated 是另一個使用 RIP 協議的路由守護進程。它同時支持 OSPF、EGP 和 RIP 協議。只有 root 用戶可用。
• traceroute:用於跟蹤 IP 包的路由。它每次發送包時都把跳數加 1,從而使得從源地址到目的地之間的所有網關都會返回消息。
• netstat -rnf inet:顯示 IPv4 的路由表。
• sysctl net.inet.ip.forwarding=1:啟用包轉發(把主機變為路由器)。
• route add|delete [-net|-host] <destination> <gateway>:(如 route add 192.168.20.0/24 192.168.30.4)添加一條路由。
• route flush:刪除所有路由。
• route add -net 0.0.0.0 192.168.10.2:添加一條默認路由。
• routed -Pripv2 -Pno_rdisc -d [-s|-q]:運行 routed 守護進程,使用 RIPv2 協議,不啟用 ICMP 自動發現,在前台運行,供給模式或安靜模式。
• route add 224.0.0.0/4 127.0.0.1:為本地地址定義多播路由。(LCTT 譯註:原文存疑)
• rtquery -n <host>(LCTT 譯註:增加了 host 參數):查詢指定主機上的 RIP 守護進程(手動更新路由表)。
其它
• nslookup:向 DNS 伺服器查詢,將 IP 轉為名稱,或反之。例如,nslookup facebook.com 會給出 facebook.com 的 IP。
• ftp <host> [port](LCTT 譯註:原文中 water 應是筆誤):傳輸文件到指定主機。通常可以使用 登錄名 "anonymous" , 密碼 "guest" 來登錄。
• rlogin -l <host>(LCTT 譯註:添加了 host 參數):使用類似 telnet 的虛擬終端登錄到主機。
重要文件
• /etc/hosts:域名到 IP 地址的映射。
• /etc/networks:網路名稱到 IP 地址的映射。
• /etc/protocols:協議名稱到協議編號的映射。
• /etc/services:TCP/UDP 服務名稱到埠號的映射。
工具和網路性能分析
• ifconfig <interface> <address> [up]:啟動介面。
• ifconfig <interface> [down|delete]:停止介面。
• ethereal & ;:在後台打開 ethereal 而非前台。
• tcpmp -i -vvv :抓取和分析包的工具。
• netstat -w [seconds] -I [interface]:顯示網路設置和統計信息。
• udpmt -p [port] -s [bytes] target_host :發送 UDP 流量。
• udptarget -p [port]:接收 UDP 流量。
• tcpmt -p [port] -s [bytes] target_host :發送 TCP 流量。
• tcptarget -p [port]:接收 TCP 流量。
交換機
• ifconfig sl0 srcIP dstIP ifconfig sl0 srcIP dstIP:配置一個串列介面(在此前先執行 slattach -l /dev/ttyd0,此後執行 sysctl net.inet.ip.forwarding=1)
• telnet 192.168.0.254:從子網中的一台主機訪問交換機。
• sh ru 或 show running-configuration :查看當前配置。
• configure terminal :進入配置模式。
• exit :退出當前模式。(LCTT 譯註:原文存疑)
VLAN
• vlan n :創建一個 ID 為 n 的 VLAN。
• no vlan N :刪除 ID 為 n 的 VLAN。
• untagged Y :添加埠 Y 到 VLAN n。
• ifconfig vlan0 create :創建 vlan0 介面。
• ifconfig vlan0 vlan_ID vlandev em0:把 em0 加入到 vlan0 介面(LCTT 譯註:原文存疑),並設置標記為 ID。
• ifconfig vlan0 [up]:啟用虛擬介面。
• tagged Y :為當前 VLAN 的埠 Y 添加標記幀支持。
UDP/TCP
• A socklab udp :使用 UDP 協議運行 socklab。
• sock :創建一個 UDP 套接字,等效於輸入 sock udp 和 bind 。
• sendto <Socket ID> <hostname> <port #>:發送數據包。
• recvfrom <Socket ID> <byte #>:從套接字接收數據。
• socklab tcp :使用 TCP 協議運行 socklab。
• passive passive:創建一個被動模式的套接字,等效於 socklab ,sock tcp ,bind ,listen 。
• accept :接受進來的連接(可以在發起進來的連接之前或之後執行)。
• connect <hostname> <port #>:等效於 socklab ,sock tcp ,bind ,connect 。
• close :關閉連接。
• read <byte #>:從套接字中讀取 n 位元組。
• write :(例如write ciao、write #10)向套接字寫入 "ciao" 或 10 個位元組。
NAT/防火牆
• rm /etc/resolv.conf :禁止地址解析,保證你的過濾和防火牆規則正確工作。
• ipnat -f file_name :將過濾規則寫入文件。
• ipnat -l :顯示活動的規則列表。
• ipnat -C -F :重新初始化規則表。
• map em0 192.168.1.0/24 -> 195.221.227.57/32 em0:將 IP 地址映射到介面。
• map em0 192.168.1.0/24 -> 195.221.227.57/32 portmap tcp/udp 20000:50000:帶埠號的映射。
• ipf -f file_name :將過濾規則寫入文件。
• ipf -F -a :重置規則表。
• ipfstat -I :當與 -s 選項合用時列出活動的狀態條目
內容來源:http;//www.linuxprobe.com/linux-network-command.html
❸ Linux網路命令有哪些
計算機網路的主要優點是能夠實現資源和信息的共享,並且用戶可以遠程訪問信息。Linux提供了一組強有力的網路命令來為用戶服務,這些工具能夠幫助用戶登錄到遠程計算機上、傳輸文件和執行遠程命令等。 本章介紹下列幾個常用的有關網路操作的命令:
ftp 傳輸文件
telnet 登錄到遠程計算機上
r - 使用各種遠程命令
netstat 查看網路的狀況
nslookup 查詢域名和IP地址的對應
finger 查詢某個使用者的信息
ping 查詢某個機器是否在工作
使用ftp命令進行遠程文件傳輸
ftp命令是標準的文件傳輸協議的用戶介面。ftp是在TCP/IP網路上的計算機之間傳輸文件的簡單有效的方法。它允許用戶傳輸ASCII文件和二進制文件。 在ftp會話過程中,用戶可以通過使用ftp客戶程序連接到另一台計算機上。從此,用戶可以在目錄中上下移動、列出目錄內容、把文件從遠程機拷貝到本地機上、把文件從本地機傳輸到遠程系統中。
需要注意的是,如果用戶沒有那個文件的存取許可權,就不能從遠程系統中獲得文件或向遠程系統傳輸文件。 為了使用ftp來傳輸文件,用戶必須知道遠程計算機上的合法用戶名和口令。這個用戶名/口令的組合用來確認ftp 會話,並用來確定用戶對要傳輸的文件可以進行什麼樣的訪問。另外,用戶顯然需要知道對其進行ftp 會話的計算機的名字或IP地址。
Ftp命令的功能是在本地機和遠程機之間傳送文件。該命令的一般格式如下:
$ ftp 主機名/IP
其中「主機名/IP」是所要連接的遠程機的主機名或IP地址。在命令行中,主機名屬於選項,如果指定主機名,ftp將試圖與遠程機的ftp服務程序進行連接;如果沒有指定主機名,ftp將給出提示符,等待用戶輸入命令: $ ftp ftp > 此時在ftp>提示符後面輸入open命令加主機名或IP地址,將試圖連接指定的主機。 不管使用哪一種方法,如果連接成功,需要在遠程機上登錄。用戶如果在遠程機上有帳號,就可以通過ftp使用這一帳號並需要提供口令。
在遠程機上的用戶帳號的讀寫許可權決定該用戶在遠程機上能下載什麼文件和將上載文件放到哪個目錄中。 如果沒有遠程機的專用登錄帳號,許多ftp站點設有可以使用的特殊帳號。這個帳號的登錄名為anonymous(也稱為匿名ftp),當使用這一帳號時,要求輸入email地址作為口令。 如果遠程系統提供匿名ftp服務,用戶使用這項服務可以登錄到特殊的,供公開使用的目錄。
一般專門提供兩個目錄:pub目錄和incoming目錄。pub目錄包含該站點供公眾使用的所有文件,incoming目錄存放上載到該站點的文件。 一旦用戶使用ftp在遠程站點上登錄成功,將得到「ftp>」提示符。現在可以自由使用ftp提供的命令,可以用 help命令取得可供使用的命令清單,也可以在 help命令後面指定具體的命令名稱,獲得這條命令的說明。
最常用的命令有:
ls 列出遠程機的當前目錄
cd 在遠程機上改變工作目錄
lcd 在本地機上改變工作目錄
ascii 設置文件傳輸方式為ASCII模式
binary 設置文件傳輸方式為二進制模式
close終止當前的ftp會話
hash 每次傳輸完數據緩沖區中的數據後就顯示一個#號
get(mget) 從遠程機傳送指定文件到本地機
put(mput) 從本地機傳送指定文件到遠程機
open 連接遠程ftp站點
quit斷開與遠程機的連接並退出ftp
? 顯示本地幫助信息
! 轉到Shell中
下面簡單將ftp常用命令作一簡介。
啟動ftp會話 open命令用於打開一個與遠程主機的會話。該命令的一般格式是: open 主機名/IP 如果在ftp 會話期間要與一個以上的站點連接,通常只用不帶參數的ftp命令。如果在會話期間只想與一台計算機連接,那麼在命令行上指定遠程主機名或IP地址作為ftp命令的參數。 終止ftp會話 close、disconnect、quit和bye命令用於終止與遠程機的會話。close和disronnect命令關閉與遠程機的連接,但是使用戶留在本地計算機的ftp程序中。quit和bye命令都關閉用戶與遠程機的連接,然後退出用戶機上的ftp 程序。 改變目錄 「cd [目錄]」命令用於在ftp會話期間改變遠程機上的目錄,lcd命令改變本地目錄,使用戶能指定查找或放置本地文件的位置。 遠程目錄列表 ls命令列出遠程目錄的內容,就像使用一個交互shell中的ls命令一樣。ls命令的一般格式是: ls [目錄] [本地文件] 如果指定了目錄作為參數,那麼ls就列出該目錄的內容。如果給出一個本地文件的名字,那麼這個目錄列表被放入本地機上您指定的這個文件中。 從遠程系統獲取文件 get和mget命令用於從遠程機上獲取文件。get命令的一般格式為: get 文件名 您還可以給出本地文件名,這個文件名是這個要獲取的文件在您的本地機上創建時的文件名。如果您不給出一個本地文件名,那麼就使用遠程文件原來的名字。 mget命令一次獲取多個遠程文件。mget命令的一般格式為: mget 文件名列表 使用用空格分隔的或帶通配符的文件名列表來指定要獲取的文件,對其中的每個文件都要求用戶確認是否傳送。 向遠程系統發送文件 put和mput命令用於向遠程機發送文件。Put命令的一般格式為: put 文件名 mput命令一次發送多個本地文件,mput命令的一般格式為: mput 文件名列表 使用用空格分隔的或帶通配符的文件名列表來指定要發送的文件。對其中的每個文件都要求用戶確認是否發送。 改變文件傳輸模式 默認情況下,ftp按ASCII模式傳輸文件,用戶也可以指定其他模式。ascii和brinary命令的功能是設置傳輸的模式。用ASCII模式傳輸文件對純文本是非常好的,但為避免對二進制文件的破壞,用戶可以以二進制模式傳輸文件。 檢查傳輸狀態 傳輸大型文件時,可能會發現讓ftp提供關於傳輸情況的反饋信息是非常有用的。hash命令使ftp在每次傳輸完數據緩沖區中的數據後,就在屏幕上列印一個#字元。本命令在發送和接收文件時都可以使用。 ftp中的本地命令 當您使用ftp時,字元「!」用於向本地機上的命令shell傳送一個命令。如果用戶處在ftp會話中,需要shell做某些事,就很有用。例如用戶要建立一個目錄來保存接收到的文件。如果輸入!mkdir new_dir,那麼Linux就在用戶當前的本地目錄中創建一個名為new_dir 的目錄。
從遠程機grunthos下載二進制數據文件的典型對話過程如下:
$ ftp grunthos Connected to grunthos 220 grunthos ftp server Name (grunthos:pc): anonymous 33l Guest login ok, send your complete e-mail address as password. Password: 230 Guest 1ogin ok, access restrictions apply. Remote system type is UNIX. ftp > cd pub 250 CWD command successful. ftp > ls 200 PORT command successful. l50 opening ASCII mode data connection for /bin/1s. total ll4 rog1 rog2 226 Transfer comp1ete . ftp > binary 200 type set to I. ftp > hash Hash mark printing on (1024 bytes/hash mark). ftp > get rog1 200 PORT command successfu1. 150 opening BINARY mode data connection for rogl (l4684 bytes). # # # # # # # # # # # # # 226 Transfer complete. 14684 bytes received in 0.0473 secs (3e + 02 Kbytes/sec) ftp > quit 22l Goodbye.
使用telnet命令訪問遠程計算機
用戶使用telnet命令進行遠程登錄。該命令允許用戶使用telnet協議在遠程計算機之間進行通信,用戶可以通過網路在遠程計算機上登錄,就像登錄到本地機上執行命令一樣。 為了通過telnet登錄到遠程計算機上,必須知道遠程機上的合法用戶名和口令。雖然有些系統確實為遠程用戶提供登錄功能,但出於對安全的考慮,要限制來賓的操作許可權,因此,這種情況下能使用的功能是很少的。當允許遠程用戶登錄時,系統通常把這些用戶放在一個受限制的shell中,以防系統被懷有惡意的或不小心的用戶破壞。 用戶還可以使用telnet從遠程站點登錄到自己的計算機上,檢查電子郵件、編輯文件和運行程序,就像在本地登錄一樣。
但是,用戶只能使用基於終端的環境而不是X Wndows環境,telnet只為普通終端提供終端模擬,而不支持 X Wndow等圖形環境。 telnet命令的一般形式為: telnet 主機名/IP 其中「主機名/IP」是要連接的遠程機的主機名或IP地址。如果這一命令執行成功,將從遠程機上得到login:提示符。 使用telnet命令登錄的過程如下: $ telnet 主機名/IP 啟動telnet會話。 一旦telnet成功地連接到遠程系統上,就顯示登錄信息並提示用戶輸人用戶名和口令。如果用戶名和口令輸入正確,就能成功登錄並在遠程系統上工作。 在telnet提示符後面可以輸入很多命令,用來控制telnet會話過程,在telnet聯機幫助手冊中對這些命令有詳細的說明。
下面是一台Linux計算機上的telnet會話舉例:
$ telnet server. somewhere. com Trying 127.0.0.1… Connected to serve. somewhere. com. Escape character is \'?]\'. 「TurboLinux release 4. 0 (Colgate) kernel 2.0.18 on an I486 login: bubba password: Last login:Mon Nov l5 20:50:43 for localhost Linux 2. 0.6. (Posix). server: ~$ server: ~$ logout Connection closed by foreign host $
用戶結束了遠程會話後,一定要確保使用logout命令退出遠程系統。然後telnet報告遠程會話被關閉,並返回到用戶的本地機的Shell提示符下。 r-系列命令 除ftp和telnet以外,還可以使用r-系列命令訪問遠程計算機和在網路上交換文件。 使用r-系列命令需要特別注意,因為如果用戶不小心,就會造成嚴重的安全漏洞。用戶發出一個r-系列命令後,遠程系統檢查名為/etc/hosts.equiv的文件,以查看用戶的主機是否列在這個文件中。如果它沒有找到用戶的主機,就檢查遠程機上同名用戶的主目錄中名為.rhosts的文件,看是否包括該用戶的主機。如果該用戶的主機包括在這兩個文件中的任何一個之中,該用戶執行r-系列命令就不用提供口令。
雖然用戶每次訪問遠程機時不用鍵入口令可能是非常方便的,但是它也可能會帶來嚴重的安全問題。我們建議用戶在建立/etc/hosts.equiv和.rhosts文件之前,仔細考慮r-命令隱含的安全問題。
rlogin命令
rlogin 是「remote login」(遠程登錄)的縮寫。該命令與telnet命令很相似,允許用戶啟動遠程系統上的交互命令會話。rlogin 的一般格式是:
rlogin [ -8EKLdx ] [ -e char ] [-k realm ] [ - l username ] host
一般最常用的格式是: rlogin host 該命令中各選項的含義為:
-8 此選項始終允許8位輸入數據通道。該選項允許發送格式化的ANSI字元和其他的特殊代碼。如果不用這個選項,除非遠端的終止和啟動字元不是或,否則就去掉奇偶校驗位。
-E 停止把任何字元當作轉義字元。當和-8選項一起使用時,它提供一個完全的透明連接。
-K 關閉所有的Kerberos確認。只有與使用Kerberos 確認協議的主機連接時才使用這個選項。
-L 允許rlogin會話在litout模式中運行。要了解更多信息,請查閱tty聯機幫助。
-d 打開與遠程主機進行通信的TCP sockets的socket調試。要了解更多信息,請查閱setsockopt的聯機幫助。
-e 為rlogin會話設置轉義字元,默認的轉義字元是「~」,用戶可以指定一個文字字元或一個\\nnn形式的八進制數。
-k 請求rlogin獲得在指定區域內的遠程主機的Kerberos許可,而不是獲得由krb_realmofhost(3)確定的遠程主機區域內的遠程主機的Kerberos 許可。
-x 為所有通過rlogin會話傳送的數據打開DES加密。這會影響響應時間和CPU利用率,但是可以提高安全性。
rsh命令
rsh是「remote shell」(遠程 shell)的縮寫。 該命令在指定的遠程主機上啟動一個shell並執行用戶在rsh命令行中指定的命令。如果用戶沒有給出要執行的命令,rsh就用rlogin命令使用戶登錄到遠程機上。
rsh命令的一般格式是:
rsh [-Kdnx] [-k realm] [-l username] host [command]
一般常用的格式是:
rsh host [command ]
command可以是從shell提示符下鍵人的任何Linux命令。
rsh命令中各選項的含義如下:
-K 關閉所有的Kerbero確認。該選項只在與使用Kerbero確認的主機連接時才使用。
-d 打開與遠程主機進行通信的TCP sockets的socket調試。要了解更多的信息,請查閱setsockopt的聯機幫助。
-k 請求rsh獲得在指定區域內的遠程主機的Kerberos許可,而不是獲得由krb_relmofhost(3)確定的遠程主機區域內的遠程主機的Kerberos許可。
-l 預設情況下,遠程用戶名與本地用戶名相同。本選項允許指定遠程用戶名,如果指定了遠程用戶名,則使用Kerberos 確認,與在rlogin命令中一樣。
-n 重定向來自特殊設備/dev/null的輸入。
-x 為傳送的所有數據打開DES加密。這會影響響應時間和CPU利用率,但是可以提高安全性。 Linux把標准輸入放入rsh命令中,並把它拷貝到要遠程執行的命令的標准輸入中。它把遠程命令的標准輸出拷貝到rsh的標准輸出中。它還把遠程標准錯誤拷貝到本地標准錯誤文件中。任何退出、中止和中斷信號都被送到遠程命令中。當遠程命令終止了,rsh也就終止了。
rcp命令
rcp代表「remote file 」(遠程文件拷貝)。該命令用於在計算機之間拷貝文件。
rcp命令有兩種格式。第一種格式用於文件到文件的拷貝;第二種格式用於把文件或目錄拷貝到另一個目錄中。
rcp命令的一般格式是:
rcp [-px] [-k realm] file1 file2 rcp [-px] [-r] [-k realm] file
directory 每個文件或目錄參數既可以是遠程文件名也可以是本地文件名。遠程文件名具有如下形式:rname@rhost:path,其中rname是遠程用戶名,rhost是遠程計算機名,path是這個文件的路徑。
rcp命令的各選項含義如下:
-r 遞歸地把源目錄中的所有內容拷貝到目的目錄中。要使用這個選項,目的必須是一個目錄。
-p 試圖保留源文件的修改時間和模式,忽略umask。
-k 請求rcp獲得在指定區域內的遠程主機的Kerberos 許可,而不是獲得由krb_relmofhost(3)確定的遠程主機區域內的遠程主機的Kerberos許可。
-x 為傳送的所有數據打開DES加密。這會影響響應時間和CPU利用率,但是可以提高安全性。 如果在文件名中指定的路徑不是完整的路徑名,那麼這個路徑被解釋為相對遠程機上同名用戶的主目錄。如果沒有給出遠程用戶名,就使用當前用戶名。如果遠程機上的路徑包含特殊shell字元,需要用反斜線(\\)、雙引號(」)或單引號(』)括起來,使所有的shell元字元都能被遠程地解釋。 需要說明的是,rcp不提示輸入口令,它通過rsh命令來執行拷貝。 - Turbolinux 提供稿件
❹ Linux常用網路配置命令
一、查看網路配置
確保網路配置的正確性及網路連接的暢通是Linux系統作為伺服器應用的基礎,查看及測試網路配置是管理Linux網路服務的第一步。
1.ifconfig——查看網路配置
1) 查看所有活動網路介面的信息
執行 ifconfig 或ip addr或ip a命令,都可以顯示當前主機中已啟用(活動)的網路介面信息。、
2) 查看指定網路介面信息
格式:ifconfig 網路介面名
可以通過TX、RX等信息了解到通過該網路介面發送和接收的數據包個數,流量等跟多屬性。
2.hostname命令
在Linux系統中,相當一部分網路服務都會通過主機名來識別本機,如果主機名配置不當,可能會導致程序功能出現故障。
1) 查看主機名
使用hostname命令就可以查看當前主機的主機名,不添加任何選項參數。
2) 臨時更改主機名
hostname NewName
註:這種方法只是臨時的更改主機名,重啟後將失效。
3) 永久更改主機名
a. 修改配置文件
RHEL6和7的配置文件存放路徑不相同,修改配置文件中的主機名,重啟就可永久更改主機名。
RHEL6主機名配置文件路徑為:/etc/sysconfig/network
RHEL7主機名配置文件路徑為:/etc/hostname
示例
b. 使用命令修改(這種方法只適用於RHEL7或者CentOS7之後)
命令格式:
使用該命令更改後,更改後的主機名就自動寫入了配置文件中,所以可以永久更改主機名,其實就是修改了配置文件。
3.route命令
直接執行route命令可以查看當前主機中的路由表信息,若結合「-n」選項使用,可以將路由記錄中的地址顯示為數字形式,這可以跳過解析主機名的過程,在路由表條目較多的情況下能夠加快執行速度。
Destination列對應的是目標網段的地址,Gateway列對應的是嚇一跳路由器的地址,Iface列對應的是發送數據的網路介面。當目標網段為「default」是,表示此行是默認網關記錄,當嚇一跳為「*」是,表示目標網段是與本機直接相連的。
4.netstat命令——查看系統的網路連接狀態等
netstat命令是了解網路狀態及排除網路服務故障的有效工具。
常用選項:
-a:顯示所有活動連接(包括監聽、非監聽狀態的服務埠)
-n:以數字形式顯示
-p:顯示相關的進程信息
-t:查看 TCP 協議相關信息
-u:查看UDP協議相關信息
-r:顯示路由表信息
-l:顯示處於監聽(listening)狀態的網路連接及埠信息
通常使用「-anput」組合選項,結合管道使用「grep」命令,來查看一些服務的埠是否開啟。
示例:
Tcp21為ftp服務的埠
二、測試網路連接
1.ping命令——測試網路連通性
常用選項:
-c<完成次數>:設置完成要求回應的次數
-i<間隔秒數>:指定收發信息的間隔時間
-q:不顯示指令執行過程,開頭和結尾的相關信息除外
-s<數據包大小>:設置數據包的大小
-t<存活數值>:設置存活數值TTL的大小
-v:詳細顯示指令的執行過程
若返回「Destination Host Unreachable」的反饋信息,則表示目標主機不可達,可能目標地址不存在或主機已關閉;返回「Network is unreachable」的反饋信息,則表示沒有可用的路由記錄(如默認網關),無法到達目標主機所在的網路;返回「Request timeout」的反饋信息,表示與目標主機間的連接超時(數據包緩慢或丟失),若有嚴格的防火牆限制,也可能返回此信息。
2.traceroute命令——跟蹤數據包的路由途徑
使用traceroute命令可以測試從當前主機到目的主機之間經過的網路節點,並顯示各中間結點的連接狀態(響應時間)。對於無法響應的節點,連接狀態將顯示為「*」。
示例:traceroute IP_ADDR
在網路測試與排錯的過程中,通常會先使用ping命令測試與主機的網路連接,如果發現網路有故障,再使用traceroute命令跟蹤查看是在哪個中間結點存在故障。
3.nslookup命令——測試DNS域名解析
nslookup是用來測試(DNS)域名解析的專用工具。(DNS服務後面再詳細講解,通俗的說就是將域名解析為ip地址的一個服務)
示例:nslookup www..com
若成功反饋要查詢域名的IP地址,則表示域名解析沒有問題;若出現「...... no servers could be reached」的信息,表示不能連接到指定的DNS伺服器;若出現「...... cant』t find xxx.yyy.zzz:NXDOMAIN」的信息,表示要查詢的域名不存在。
三、設置網路地址參數
設置網路參數的方法:
• 臨時配置 —— 使用命令調整網路參數簡單、快速,可直接修改運行中的網路參數
一般只適合在調試網路的過程中使用
系統重啟以後,所做的修改將會失效
• 永久配置 —— 通過配置文件修改網路參數修改各項網路參數的配置文件
適合對伺服器設置固定參數時使用
需要重載網路服務或者重啟以後才會生效
1.臨時配置——使用網路配置命令(註:RHEL6中網路介面的名稱為eth,RHEL7中為ens)
1)使用ifconfig命令修改網卡的地址、狀態
ifconfig命令不僅可以用於查看網卡配置,還可以修改網卡的ip地址,子網掩碼,也可以綁定網路介面、激活或停用網路介面
a. 修改網卡的ip地址(臨時修改)
命令格式:
示例:
b. 禁用或者重新激活網卡
命令格式:
示例:
c. 設置虛擬網路介面(相當於一塊網卡配置多個IP地址)
命令格式:
示例:
可以根據需要添加更多的虛擬介面,如「eth0:1」「eth0:2」等
2)使用route命令添加、刪除靜態路由記錄
• 刪除路由表中的默認網關記錄命令格式:route del default gw IP地址
• 向路由表中添加默認網關記錄命令格式:route add default gw IP地址
• 添加到指定網段的路由記錄命令格式:route add -net 網段地址 gw IP地址
• 刪除到指定網段的路由記錄命令格式:router del -net 網段地址
2.永久配置——修改網路配置文件
1)網路介面配置文件
網路介面的配置文件默認位於目錄「/etc/sysconfig/network-scripts/」中,文件名格式為:「ifcfg-XXX」,其中「XXX」是網路介面的名稱。例如:RHEL6中網卡eth0的配置文件是「ifcfg-eth0」,而RHEL7中網卡ens33的配置文件是「ifcfg-ens33」。
在網卡的配置文件中,可以看到靜態IP地址的部分內容如下圖所示:
上述個配置項的含義及作用:(圖示為RHEL6中的配置文件,7中也差不多,換湯不換葯,修改的都差不多)
• DEVICE:設置網路介面的名稱ONBOOT:設置網路介面是否在Linux系統啟動時激活BOOTPROTO:設置網路介面的配置方式,值為static時表示使用靜態ip地址,為dhcp時表示通過dhcp的方式動態獲取ip地址IPADDR:設置網路介面的ip地址NETMASK:設置網路介面的子網掩碼GATEWAY:設置網路介面的默認網關地址2)重啟 network 網路服務
當修改了網路介面的配置文件以後,若要使新的配置生效,可以重啟network服務或者重啟主機或者禁用、啟用網路介面。
示例:
• RHEL6中重啟network服務:service network restartRHEL7中重啟network服務:systemctl restart network註:這是我在做實驗時候的一個經驗:RHEL6修改完網卡配置重啟後,ip地址仍然沒有改過來,這時候我們經常會刪除「/etc/udev/rules.d/70-persistent-net.rules」這個文件。RHEL7不用管,RHEL7特別好改,RHEL6改的時候特別難受。(個人提示,不求認同)
3)域名解析配置文件
a.指定為本機提供DNS解析的伺服器地址
/etc/resolv.conf文件中記錄了本機默認使用的DNS伺服器的地址信息,對該文件所做的修改將會立刻生效。Linux系統中最多可以指定3個(第3個以後將被忽略)不同的DNS伺服器地址,優先使用第1個DNS伺服器。
示例:
其中「search localdomain」用來設置默認的搜索域(域名後綴)。例如,當訪問主機「localhost」時,就相當於訪問「localhost.localdomain」。
b.本地主機映射文件
/etc/hosts文件中記錄著一份主機名與ip地址的映射關系表,一般用來保存經常訪問的主機信息。當訪問一個未知的域名時,先查找該文件中是否有相應的映射記錄,如果找不到在去向DNS伺服器查詢。
hosts 文件和 DNS 伺服器的比較
• 默認情況下,系統首先從 hosts 文件查找解析記錄hosts 文件只對當前的主機有效hosts 文件可減少 DNS 查詢過程,從而加快訪問速度