這是一系列基礎(chǔ)命令的集合,我會(huì)從使用角度介紹,看完這些以后你能夠在linux終端下完成大部分之前需要鼠標(biāo)和鍵盤才能完成的操作。
今天是第五篇,介紹Linux下基礎(chǔ)的網(wǎng)絡(luò)操作命令。
- 網(wǎng)卡信息
ubuntu@ubuntu-virtual-machine:~$ ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.115.138 netmask 255.255.255.0 broadcast 192.168.115.255
inet6 fe80::a1ed:ba47:821f:8b10 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:51:ad:60 txqueuelen 1000 (以太網(wǎng))
RX packets 8665 bytes 12475254 (12.4 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1103 bytes 98183 (98.1 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (本地環(huán)回)
RX packets 188 bytes 16340 (16.3 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 188 bytes 16340 (16.3 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
- 網(wǎng)絡(luò)配置
主要列舉幾個(gè)我們?cè)诠ぷ髦锌赡軙?huì)用到的操作:
- 關(guān)閉指定網(wǎng)卡
# ifconfig eth0 down #關(guān)閉eth0
- 開啟指定網(wǎng)卡
# ifconfig eth0 up #開啟eth0
- 修改指定網(wǎng)卡信息
# ifconfig eth0 down #關(guān)閉網(wǎng)卡
# ifconfig eth0 hw ether 00:11:22:33:44:55 #修改eth0網(wǎng)卡MAC地址
# ifconfig eth0 up #啟動(dòng)網(wǎng)卡
# ifconfig eth0 192.168.3.178 #給eth0網(wǎng)卡配置IP地址
# ifconfig eth0 192.168.3.178 netmask 255.255.255.0 #給eth0網(wǎng)卡配置IP地址,并加上子掩碼
# ifconfig eth0 192.168.3.178 netmask 255.255.255.0 broadcast 192.168.3.255 #給eth0網(wǎng)卡配置IP地址,加上子掩碼,加上個(gè)廣播地址
- 啟動(dòng)/關(guān)閉ARP協(xié)議
如果對(duì)網(wǎng)絡(luò)不熟悉可能不了解什么是ARP,但是這個(gè)協(xié)議在開發(fā)中是經(jīng)常被用到的,可以先了解一下。
# ifconfig eth0 arp #開啟eth0網(wǎng)卡ARP
# ifconfig eth0 -arp #關(guān)閉eth0網(wǎng)卡ARP
- 設(shè)置MTU
MTU是包或幀的最大長(zhǎng)度,一般單位是字節(jié)。如果MTU過大,在碰到路由器時(shí)會(huì)被拒絕轉(zhuǎn)發(fā),因?yàn)樗荒芴幚磉^大的包。如果太小,因?yàn)閰f(xié)議一定要在包(或幀)上加上包頭,那實(shí)際傳送的數(shù)據(jù)量就會(huì)過小,這樣也劃不來。大部分操作系統(tǒng)會(huì)提供給用戶一個(gè)默認(rèn)值,該值一般對(duì)用戶來說是比較合適的。
# ifconfig eth0 mtu 1500 #設(shè)置MTU1500 字節(jié)
- ping命令
ping命令一般用來測(cè)試網(wǎng)絡(luò)連通狀態(tài),但是一定要注意,并不是說沒有ping通就表示網(wǎng)絡(luò)不通,因?yàn)榫W(wǎng)絡(luò)可以配置ping的功能,但是大多數(shù)情況下都有這個(gè)服務(wù)。
使用非常簡(jiǎn)單,ping命令緊接著一個(gè)IP或者域名地址,需要手動(dòng)輸入CTRL+C結(jié)束。
ubuntu@ubuntu-virtual-machine:~$ ping 192.168.3.178
PING 192.168.3.178 (192.168.3.178) 56(84) bytes of data.
64 字節(jié),來自 192.168.3.178: icmp_seq=1 ttl=128 時(shí)間=4.90 毫秒
64 字節(jié),來自 192.168.3.178: icmp_seq=2 ttl=128 時(shí)間=5.08 毫秒
64 字節(jié),來自 192.168.3.178: icmp_seq=3 ttl=128 時(shí)間=5.26 毫秒
^C
--- 192.168.3.178 ping 統(tǒng)計(jì) ---
已發(fā)送 3 個(gè)包, 已接收 3 個(gè)包, 0% 包丟失, 耗時(shí) 2002 毫秒
rtt min/avg/max/mdev = 4.904/5.081/5.260/0.145 ms
ubuntu@ubuntu-virtual-machine:~$ ping www.baidu.com
PING www.a.shifen.com (14.215.177.39) 56(84) bytes of data.
64 字節(jié),來自 14.215.177.39 (14.215.177.39): icmp_seq=1 ttl=128 時(shí)間=34.2 毫秒
64 字節(jié),來自 14.215.177.39 (14.215.177.39): icmp_seq=2 ttl=128 時(shí)間=33.5 毫秒
64 字節(jié),來自 14.215.177.39 (14.215.177.39): icmp_seq=3 ttl=128 時(shí)間=33.8 毫秒
64 字節(jié),來自 14.215.177.39 (14.215.177.39): icmp_seq=4 ttl=128 時(shí)間=36.1 毫秒
^C
--- www.a.shifen.com ping 統(tǒng)計(jì) ---
已發(fā)送 4 個(gè)包, 已接收 4 個(gè)包, 0% 包丟失, 耗時(shí) 3007 毫秒
rtt min/avg/max/mdev = 33.524/34.393/36.068/0.992 ms
介紹幾個(gè)常用的參數(shù):
-c 指定ping的包數(shù)。
ubuntu@ubuntu-virtual-machine:~$ ping -c 5 www.baidu.com
PING www.a.shifen.com (14.215.177.39) 56(84) bytes of data.
64 字節(jié),來自 14.215.177.39 (14.215.177.39): icmp_seq=1 ttl=128 時(shí)間=34.8 毫秒
64 字節(jié),來自 14.215.177.39 (14.215.177.39): icmp_seq=2 ttl=128 時(shí)間=35.4 毫秒
64 字節(jié),來自 14.215.177.39 (14.215.177.39): icmp_seq=3 ttl=128 時(shí)間=36.8 毫秒
64 字節(jié),來自 14.215.177.39 (14.215.177.39): icmp_seq=4 ttl=128 時(shí)間=34.7 毫秒
64 字節(jié),來自 14.215.177.39 (14.215.177.39): icmp_seq=5 ttl=128 時(shí)間=36.4 毫秒
--- www.a.shifen.com ping 統(tǒng)計(jì) ---
已發(fā)送 5 個(gè)包, 已接收 5 個(gè)包, 0% 包丟失, 耗時(shí) 4010 毫秒
rtt min/avg/max/mdev = 34.677/35.613/36.782/0.843 ms
- 網(wǎng)絡(luò)防火墻
Ubuntu我們使用ufw命令來配置防火墻。
如果你的設(shè)備上沒有ufw命令,可運(yùn)行apt安裝。
- 查看防火墻狀態(tài)
ubuntu@ubuntu-virtual-machine:~$ sudo ufw status
[sudo] ubuntu 的密碼:
狀態(tài):不活動(dòng)
狀態(tài):不活動(dòng)表示我沒有打開防火墻。
- 關(guān)閉防火墻
ubuntu@ubuntu-virtual-machine:~$ sudo ufw disable
防火墻在系統(tǒng)啟動(dòng)時(shí)自動(dòng)禁用
- 打開防火墻
ubuntu@ubuntu-virtual-machine:~$ sudo ufw enable
此命令可能會(huì)中斷目前的 ssh 連接。要繼續(xù)嗎 (y|n)? y
在系統(tǒng)啟動(dòng)時(shí)啟用和激活防火墻
- 設(shè)置防火墻
打開端口訪問。
ubuntu@ubuntu-virtual-machine:~$ sudo ufw allow 53 #允許外部訪問53端口(tcp/udp)
規(guī)則已添加
規(guī)則已添加 (v6)
打開IP訪問。
ubuntu@ubuntu-virtual-machine:~$ sudo ufw allow from 192.168.3.178 #允許192.168.3.178訪問所有的本機(jī)端口
規(guī)則已添加
指定網(wǎng)段訪問特定端口。
ubuntu@ubuntu-virtual-machine:~$ sudo ufw allow proto tcp from 192.168.3.0/24 to any port 22
# 允許所有192.168.3.*的IP訪問服務(wù)器的ssh服務(wù)
規(guī)則已添加
刪除防火墻規(guī)則。
ubuntu@ubuntu-virtual-machine:~$ sudo ufw delete allow 53 # 刪除對(duì)端口53的開放規(guī)則
規(guī)則已刪除
規(guī)則已刪除 (v6)
文末
至此,Linux終端使用的基礎(chǔ)命令介紹結(jié)束。
對(duì)于命令的使用完全是熟能生巧的過程,多使用就能發(fā)現(xiàn)命令行的便捷和效率。
后面開始開發(fā)類知識(shí)介紹。