文章目錄
4. 服務管理
4.1 網絡管理
有兩套工具包,早期版本使用net-tools
,現今主推iproute2
- net-tools:
ifconfig
route
netstat - iproute2:
ip
ss
4.1.1 網絡狀態查看
管理員直接輸入ifconfig。普通用戶輸入/sbin/ifconfig
還可以輸入ifconfig 網卡名
- eth0 第一塊網卡(網絡接口)
- 第一個網絡接口有可能叫以下名字(有的系統如CentOS會檢測網卡類型,檢測不到時命名爲eth0):
eno1 板載網卡
ens33 PCI-E網卡
enp0s3 無法獲取無力信息的 PCI-E 網卡
4.1.1.1 網絡接口命名更改
當有大量服務器時,網絡接口名又不一致,是無法進行批量操作的。這時候,就需要重命名。
- 網卡命名規則手biosdevname 和 net.ifnames兩個參數影響
- 方法:
- 給
/etc/default/grub
文件,增加biosdevname=0 net.ifnames=0
這一步的文件是寫給用戶看的。真正被系統啓動,真正讀取到的是/boot/grub2/grub.cfg。所以需要通過第2步,把用戶看到的轉化爲系統讀取到的。
- 更新grub
# grub2-mkconfig -o /boot/grub2/grub.cfg
- 重啓後生效(也可以用shutdown -r now)
# reboot
網卡名|biosdevname| net.ifnames
-|-|-
ens33(默認)|0|1
em1|1|0
eth0|0|0
4.1.1.2 mii-tool 網卡物理連接情況
mii-tool 網卡名
route -n
查看網關命令,使用-n參數不解析主機名
4.1.2 網絡配置
ifconfig <接口> <ip地址> [netmask 子網掩碼]
配置網卡
ifup <接口>
啓用網卡
ifdown <接口>
關閉網卡
- 添加網關:
添加默認網關:route add default gw <網關ip>
如存在網關要先刪除網關,add改爲del即可
添加明細路由:route add -host <指定ip> gw <網關ip>
添加明細路由:route add -net <指定網段> netmask <子網掩碼> gw <網關ip>
4.1.2.1 網絡命令集合:IP 命令
ip addr ls
對應ifconfig
ip link set dev eth0 up
對應ifup eth0
ip addr add 10.0.0.1/24 dev eth1
對應ifconfig eth1 10.0.0.1 netmask 255.255.255.0
ip route add 10.0.0/24 via 192.168.0.1
對應route add -net 10.0.0.0 netmask 255.255.255.0 gw 192.168.0.1
4.1.3 網絡故障排除
主機問題:
- 連接是否暢通: ping IP
- 追蹤路由每一步的質量: traceroute IP
中間的主機不支持用traceroute追蹤時,會顯示*
-w參數表示最多等幾秒 - 檢查到目標主機間,是否有數據包被丟失了: mtr
會進入詳細查看界面,按Ctrl C
退出 - 域名對應的IP查找: nslookup
- 端口連接狀態: telnet IP PORT
按Ctrl C
,再輸入quit退出 - 抓包工具: tcpdump
抓取所有網卡: -i any
如果有域名,解析成IP: -n
指定端口: port 端口號
指定主機: host 主機IP
把內容保存: -w 文件路徑
- netstat
如果有域名,解析成IP: -n
以TCP方式: -t
顯示對應進程: -p
監聽狀態: -l
(25是郵件端口) - ss
與netstat基本相同
4.1.4 網絡服務管理
network和NetworkManager是兩套網絡管理工具, 分爲兩種:SYSV和systemd
-
打開關閉重啓network: service network start(stop/restart)
-
systemctl list-unit-files NetworkManager.service
-
打開關閉重啓NetworkManger: systemctl start(stop/restart) NetworkManger
network和NetworkManager是兩套網絡管理工具,一般只用其中一個進行進行管理,所以要將另一個進行關閉。
- 關閉ntework:
chkconfig --list network
chkconfig --level 要關閉的級別 network off
打開的話,把off換爲on - 關閉NetworkManger:
systemctl disable NetworkManger
激活用enable
4.1.5 常用網絡配置文件
- 網卡配置: ifcfg-eth0
- DEMO:設置靜態IP地址
重啓網絡服務以生效: service network restart
或: systemctl restart NetworkManager.service
- 臨時更改主機名: hostname 新主機名.新域名
- 永久更改主機名: hostnamectl set-hostname 新主機名.新域名
- 但是更改了之後,系統很多程序會找不到主機名對應的IP地址,會出問題,這時需要修改主機相關配置: /etc/hosts
然後# reboot重啓