一、网络配置命令:
1、ifconfig(配置网络接口命令)
命令格式:ifconfig [interface]
ifconfig interface [aftype] options | address …
命令例子:
#查看所有网卡接口的配置信息:ifconfig [-a]
~]# ifconfig
# 查看某网卡接口配置信息 :ifconfig IFACE
~]# ifconfig eth0
# 开启或关闭某网卡接口:ifconfig IFACE [up|down]
~]# ifconfig eth0 down
# 配置网卡接口IP地址:
ifconfig IFACE IP/mask [up]/ifconfig IFACE IP netmask MASK
~]# ifconfig eth0:0 1.1.1.1/32 up
# 启用或禁用网卡混杂模式:ifconfig IFACE [-]promisc
~]# ifconfig eth0 -promisc # 禁用
2、route(路由管理命令)
命令格式:route [-CFvnee]
route add/del [-net|-host] target [netmask Nm] [gw Gw] [metric N] [[dev] If]
命令用法:
# 查看:
~]# route -n
# 添加:
~]# route add -host 192.168.1.3 gw 172.16.0.1 dev eth0 # 主机路由 ~]# route add -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1 dev eth0 # 网段路由 ~]# route add -net 192.168.0.0/24 gw 172.16.0.1 dev eth0 # 网段路由 ~]# route add default gw 172.16.0.1 # 默认路由
# 删除:
~]# route del dev eth0 ~]# route del -host 192.168.1.3 ~]# route del -net 192.168.0.0 netmask 255.255.255.0
配置文件:/etc/resolv.conf
添加:
nameserver DNS_SERVER_IP1
nameserver DNS_SERVER_IP2
nameserver DNS_SERVER_IP3
4、netstat(网络连接状态显示命令)
命令格式: netstat [OPTION]
选项:-t: tcp协议相关
-u: udp协议相关
-w: raw socket相关
-l: 处于监听状态
-a: 所有状态
-n: 以数字显示IP和端口;
-e:扩展格式(显示User及Inode )
-p: 显示相关进程及PID
常用组合:
-tan, -uan, -tnl, -unl
显示路由表:
netstat {--route|-r} [--numeric|-n]
-r: 显示内核路由表(显示)
-n: 数字格式
-e:扩展格式(显示Metric)
显示接口统计数据:
netstat {--interfaces|-I|-i} [iface] [--all|-a] [--extend|-e]
[--program|-p] [--numeric|-n]
# 显示所有接口的统计信息:netstat -I
~]# netstat -i
# 显示特定接口的统计信息:netstat -IIFACE
~]# netstat -Ieth0
TCP的常见状态:
LISTEN: 监听
ESTABLISHED:已建立的连接
FIN_WAIT_1:主动关闭,已发出关闭请求,等待对方确认
FIN_WAIT_2:主动关闭,已收到对方关闭传输连接确认,等待对方发送关闭连接请求
SYN_SENT:发送SYN请求,等待对方确认
SYN_RECV:收到一个传输请求,但尚未确认
CLOSED:连接关闭状态
5、ss(网络连接状态显示命令,类似netstat,更灵活速度更快)
格式:ss [OPTION]... [FILTER]
选项:
-t: tcp协议相关
-u: udp协议相关
-w: 裸套接字相关
-x:unix sock相关
-l: listen状态的连接
-a: 所有
-n: 数字格式
-p: 相关的程序及PID
-e: 扩展的信息
-m:内存用量
-o:计时器信息
FILTER := [ state TCP-STATE ] [ EXPRESSION ]
EXPRESSION:
dport =
sport =
~]# ss -o state established '( dport = :ssh or sport = :ssh )'
常用组合:
-tan, -tanl, -tanlp, -uan
二、配置Linux网络属性:ip命令
命令格式:ip [ OPTIONS ] OBJECT { COMMAND | help }
OBJECT := { link | addr | route }
link:网络设备属性管理
# 显示接口属性: ip link show [ DEVICE ] [up|down]
~]# ip link show eth0 ~]# ip link show up # 显示激活状态的接口
# 设置接口属性:
ip link set DEVICE [{ up|down }|[ mtu MTU ]|[ promisc { on|off }]]
~]# ip link set eth0 up mtu 1500 promisc on
addr:IP地址管理
ip addr { add | del } IFADDR dev STRING
IFADDR可用选项 :
[label LABEL]:添加地址时指明网卡别名
[scope {global|link|host}]:指明作用域(global: 全局可用,link: 仅链接可用;host: 本机可用)
[broadcast ADDRESS]:指明广播地址
# 添加IP
~]# ip addr add label eth0:0 2.2.2.2/24 dev eth0
# 删除IP
~]# ip addr del label eth0:0 2.2.2.2/24 dev eth0
ip addr { show | flush }[dev DEVICE] [label PATTERN][primary and secondary]
# 显示指定设备IP信息
~]# ip addr show label eth0:0 dev eth0 #显示网卡设备别名的IP信息
# 清空指定设备的IP信息
~]# ip addr show label eth0:0 dev eth0
route:路由管理
ip route { add | del | change} TARGET via GW dev IFACE src SOURCE_IP
TARGET: 主机路由:IP;网络路由:NETWORK/MASK
# 添加主机路由
~]# ip route 1.1.1.1 via 192.168.52.2 dev eth0
# 添加网段路由
~]# ip route add 2.2.2.0/24 via 192.168.52.2 dev eth0 src 192.168.52.20 # src指定源IP
# 添加网关
~]# ip route add default via GW dev IFACE
# 删除路由:
~]# ip route del 1.1.1.1 via 192.168.52.2 dev eth0
# 显示路由信息:ip route show
# 清空指定设备的路由列表:ip route flush dev IFACE
三、Linux网络属性配置: 修改配置文件
IP、MASK、GW、DNS相关配置文件:
/etc/sysconfig/network-scripts/ifcfg-IFACE
路由相关的配置文件:
/etc/sysconfig/network-scripts/route-IFACE
1、设定网卡接口参数
/etc/sysconfig/network-scripts/ifcfg-IFACE:
DEVICE:此配置文件应用到的设备;
HWADDR:对应的设备的MAC地址;
BOOTPROTO:激活此设备时使用的地址配置协议,常用的dhcp, static, none, bootp;
NM_CONTROLLED:NM是NetworkManager的简写;此网卡是否接受NM控制;CentOS6建议为“no”;
ONBOOT:在系统引导时是否激活此设备;
TYPE:接口类型;常见有的Ethernet, Bridge;
UUID:设备的惟一标识;
IPADDR:指明IP地址;
NETMASK:子网掩码;
GATEWAY: 默认网关;
DNS1:第一个DNS服务器指向;
DNS2:第二个DNS服务器指向;
USERCTL:普通用户是否可控制此设备;
PEERDNS:如果BOOTPROTO的值为“dhcp”,是否允许dhcp server分配的dns服务器指向信息直接覆盖
至/etc/resolv.conf文件中;
2、在配置文件中定义路由
配置文件:/etc/sysconfig/network-scripts/route-IFACE
两种风格:
(1) TARGET via GW
(2) 每三行定义一条路由
ADDRESS#=TARGET
NETMASK#=mask
GATEWAY#=GW
3、给网卡配置多地址:
(1) ifconfig: ifconfig IFACE_ALIAS
(2) ip:ip addr add
(3) 配置文件:ifcfg-IFACE_ALIAS
DEVICE=IFACE_ALIAS
注意:网关别名不能使用dhcp协议引导;
4、Linux网络属性配置的tui(text user interface)
命令:system-config-network-tui或setup
注意:记得重启网络服务方能生效;
5、配置当前主机的主机名
临时生效:hostname [HOSTNAME]
永久生效:/etc/sysconfig/network
添加:HOSTNAME= your hostname
6、网络接口识别并命名相关的udev配置文件:
/etc/udev/rules.d/70-persistent-net.rules
卸载网卡驱动:modprobe -r e1000
装载网卡驱动:modprobe e1000
四、CentOS 7网络属性配置
(1) 网卡命名机制
systemd对网络设备的命名方式:
(a) 如果Firmware或BIOS为主板上集成的设备提供的索引信息可用,且可预测则根据此索引进行命名,例如eno1;
(b) 如果Firmware或BIOS为PCI-E扩展槽所提供的索引信息可用,且可预测,则根据此索引进行命名,例如ens1;
(c) 如果硬件接口的物理位置信息可用,则根据此信息进行命名,例如enp2s0;
(d) 如果用户显式启动,也可根据MAC地址进行命名,enx2387a1dc56;
(e) 上述均不可用时,则使用传统命名机制;
上述命名机制中,有的需要biosdevname程序的参与。
(2) 名称组成格式
en: ethernet
wl: wlan
ww: wwan
名称类型:
o<index>: 集成设备的设备索引号;
s<slot>: 扩展槽的索引号;
x<MAC>: 基于MAC地址的命名;
p<bus>s<slot>: enp2s1
(3)网卡设备的命名过程:
第一步:
udev, 辅助工具程序/lib/udev/rename_device, /usr/lib/udev/rules.d/60-net.rules
第二步:
biosdevname 会根据/usr/lib/udev/rules.d/71-biosdevname.rules
第三步:
通过检测网络接口设备,根据/usr/lib/udev/rules.d/75-net-description
ID_NET_NAME_ONBOARD, ID_NET_NAME_SLOT, ID_NET_NAME_PATH
回归传统命名方式:
第一步:
编辑/etc/default/grub配置文件
GRUB_CMDLINE_LINUX="net.ifnames=0 rhgb quiet"
第二步:
为grub2生成其配置文件
grub2-mkconfig -o /etc/grub2.cfg
第三步:
重启系统
(4)地址配置工具:nmcli
nmcli [ OPTIONS ] OBJECT { COMMAND | help }
如何修改IP地址等属性:
Usage: nmcli connection modify IFACE [+|-]setting.property value
setting.property:
ipv4.addresses
ipv4.gateway
ipv4.dns1
ipv4.method
#修改IP: [root@centos7 ~]# nmcli con modify eth0 ipv4.addresses 192.168.52.7/24 # 增加IP: [root@centos7 ~]# nmcli con modify eth0 +ipv4.addresses 1.1.1.1/24 # 删减IP: [root@centos7 ~]# nmcli con modify eth0 -ipv4.addresses 1.1.1.1/24 # 修改网关: [root@centos7 ~]# nmcli con modify eth0 ipv4.gateway 192.168.52.2 # 修改DNS [root@centos7 ~]# nmcli con modify eth0 ipv4.dns 8.8.8.8
以上编辑操作都需要重启生效:
[root@centos7 ~]# nmcli con down eth0;nmcli con up eth0 # 重启生效
Usage: nmcli device { COMMAND | help }
COMMAND := { status|show|connect|disconnect|delete|wifi}
status:显示所有接口的状态
show [<ifname>]:显示指定接口的详细信息
connect <ifname>:连接指定接口
disconnect <ifname>:断开指定接口连接
delete <ifname>:删除指定接口
[root@centos7 ~]# nmcli dev show eth0 GENERAL.DEVICE: eth0 GENERAL.TYPE: ethernet GENERAL.HWADDR: 00:0C:29:01:DC:01 GENERAL.MTU: 1500 GENERAL.STATE: 100 (connected) GENERAL.CONNECTION: eth0 GENERAL.CON-PATH: /org/freedesktop/NetworkManager/ActiveConnection/4 WIRED-PROPERTIES.CARRIER: on IP4.ADDRESS[1]: 192.168.52.7/24 IP4.GATEWAY: 192.168.52.2 IP6.ADDRESS[1]: fe80::20c:29ff:fe01:dc01/64 IP6.GATEWAY:
(5)网络接口配置tui工具:nmtui
[root@centos7 ~]# nmtui
(6)主机名称配置工具:hostnamectl {status | set-hostname }
[root@centos7 ~]# hostnamectl status Static hostname: localhost.localdomain Icon name: computer Chassis: n/a Machine ID: 800b1ae9531f4c38964ddd3322f4624b Boot ID: ec6a5610e3444e668bed2c81bc981a5d Virtualization: vmware Operating System: CentOS Linux 7 (Core) CPE OS Name: cpe:/o:centos:centos:7 Kernel: Linux 3.10.0-229.el7.x86_64 Architecture: x86_64
[root@centos7 ~]# hostnamectl set-hostname Centos7 # 永久生效
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。