linux网络相关属性配置(一)

将linux主机接入至网络中

1.IP/NETMASK:本地通信
2.路由(网关):跨网络通信
3.DNS服务器地址:基于主机名的通信
配置方式
静态指定:
1)命令
            ifcfg家族
                ifconfig:IP/NETMASK
                route:路由
                netstat:查看状态及统计数
            iproute2家族
                 ip OBJECT:
                      addr:地址和掩码
                      route:=路由
                    ss:查看状态及统计数
      Centos7   nm
            nmcli:命令行工具
            nmtul:text window工具
注意:a)DNS服务器指定
            配置文件:/etc/resolv.conf
            b)主机名配置
            hostname:临时指定主机名
            配置文件/etc/sysconfig/network
                            hostnamectl(Centos7)
2)配置文件
RedHat及相关发行版
 /etc/sysconfig/network-scripts/ifcfg-network_name
动态指定:依赖于本地网络中的DHCP服务
网络接口命名方式 :
             传统命名方式:
                以太网:ethX
                PPP网络:PPPX
            可预测命名方案
                    支持多种不同的命名机制:
                            fireware,拓扑结构
命名格式的组成
en:ethernet
wl:wlan
ww:wwan
名称的类型
o:集成设备的索引号
s:扩展槽的索引号
x:基于MAC地址的命名号
p:基于总线及槽的索引号
linux网络属性配置
ifcfg命令家族:ifconfig,route,netstat
ifconfig命令:
        ifconfig [-v] [-a] [-s] [interface]
        ifconfig -a 显示所有网络接口
        ifconfig IFACE IP/NETMASK up 配置并激活网络接口
        ifconfig IFACE IP  netmask NETMASK 配置IP
注意:ifconfig是立即送往内核中的TCP/IP协议栈生效
route命令:路由查看及管理
路由条目类型
  主机路由:目标地址为单个IP
  网络路由:目标地址为IP网络
  默认路由:目标为任意主机:0.0.0.0/0.0.0.0
route [-CFvnNee] [-A family |-4|-6]
查看路由
route -n 以数字方式显示路由条目
[root@Centos-7-24 ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
   目标地址      下一跳网关     目标掩码
0.0.0.0         10.0.0.2        0.0.0.0         UG    100    0        0 ens33
10.0.0.0        0.0.0.0         255.255.255.0   U     100    0        0 ens33
网关显示为0.0.0.0表示为本地网络无需网关,直连路由
UG:up gateway
Metric:到达目标网络的开销
iface:由那个本地网络接口发出
添加路由
route  [-v] [-A family |-4|-6] add [-net|-host] target [netmask Nm] [gw Gw] [[dev] If]
例:
route add -net 10.0.0.0/8 gw 192.168.10.1 dev eth0 到达网络10.0.0.0需通下一跳192.168.10.1,本地etho发出
route add -net 0.0.0.0/0.0.0.0 gw 192.168.10/route add default gw 192.168.10.1 默认网关去往任意网络
删除路由
route  [-v] [-A family |-4|-6] del [-net|-host] target [gw Gw] [netmask Nm] [metric N] [[dev] If]
route del -net 10.0.0.0/8
netstat命令
netstat -rn:显示路由表
-r:显示内核路由表
-n:以数字方式显示
netstat   [--tcp|-t]   [--udp|-u] [--listening|-l] [--all|-a]  [--numeric|-n]
-w:raw socket 相关连接
-l:处理监听状态的连接
-a:显示所有状态
-e:扩展格式
-p:显示相关的进程和PID
[root@Centos-7-24 ~]# netstat -tn
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State   
            接收队列  发送队列                              远程IP   
tcp        0     96 10.0.0.24:22            10.0.0.1:14083          ESTABLISHED
常用组合 -tan -uan -tnl -unl -tunlp
netstat  {--interfaces|-I|-i}  [--all|-a]  [--extend|-e]  [--verbose|-v]  [--program|-p] [--numeric|-n] [--numeric-hosts] [--numeric-ports] [--numeric-users] [--continu‐
       ous|-c] [delay] 显示接口的统计数据
所有接口
netstat -i
[root@Centos-7-24 ~]# netstat -i
Kernel Interface table
Iface             MTU    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
ens33            1500     2118      0      0 0          1317      0      0      0 BMRU
ens37            1500      301      0      0 0            63      0      0      0 BMRU
lo              65536        0      0      0 0             0      0      0      0 LRU
指定接口
netstat -I
[root@Centos-7-24 ~]# netstat -Iens33
Kernel Interface table
Iface             MTU    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
ens33            1500    15324      0      0 0         10175      0      0      0 BMRU
fup/ifdown命令:通过配置文件/etc/sysconfig/network-scripts/ifcifg-IFACE来识别接口并完成配置的
hostname命令
hostname:查看主机名
(centos6)hostname HOSTNAME 只当前有限
(centos7)hostnameclt set-hostname HOSTNAME 永久有限
  status                 Show current hostname settings
  set-hostname NAME      Set system hostname
  set-icon-name NAME     Set icon name for host
  set-chassis NAME       Set chassis type for host
  set-deployment NAME    Set deployment environment for host
  set-location NAME      Set location for host
hostname 配置文件位置:/etc/sysconfig/network
注意:修改配置文件后不会立即生效,需激活
配置DNS服务器指向:最多可以指定3个
DNS配置文件位置:/etc/resolv.conf
DNS配置测试
dig -t A FQDN(主机名):将主机名解析为IP
dig -x IP:将IP反解为主机名
dig测试不会解析/etc/hosts文件内的FQDN
[root@Centos-7-24 ~]# dig -t A www.baidu.com
; <<>> DiG 9.11.4-P2-RedHat-9.11.4-16.P2.el7_8.6 <<>> -t A www.baidu.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 59519
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;www.baidu.com.                 IN      A
;; ANSWER SECTION:
www.baidu.com.          218     IN      CNAME   www.a.shifen.com.
www.a.shifen.com.       263     IN      A       14.215.177.38
www.a.shifen.com.       263     IN      A       14.215.177.39
;; Query time: 33 msec
;; SERVER: 114.114.114.114#53(114.114.114.114)
;; WHEN: Thu Oct 22 11:27:20 CST 2020
;; MSG SIZE  rcvd: 101
iproute2家族
ip命令
ip [ OPTIONS ] OBJECT { COMMAND | help }
OBJECT := { link | address | addrlabel | route | rule | neigh | ntable | tunnel | tuntap | maddress | mroute | mrule | monitor | xfrm | netns | l2tp | tcp_metrics |
               token | macsec }
ip OBJECT:
  ip link:网络接口配置
  ip link set:配置网络接口属性
  ip link set IFACE up/down
  ip link set IFACE multicast on/off 启用多波
例:  
  ip link set dev ens33 up 启用ens33网络接口
  ip link set name 更改网络接口名字
例:
[root@Centos-7-24 ~]# ip link set ens37 down
[root@Centos-7-24 ~]# ip link set ens37 name eth0
  ip link show 显示设备特性
[root@Centos-7-24 ~]# ip link show/list
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
    link/ether 00:0c:29:81:9b:11 brd ff:ff:ff:ff:ff:ff
ip link help 显示简要命名用帮助
ip netns管理网络名称空间
ip netns list 列出所有的netns
ip netns add NAME 创建指定的netns
ip netns del NAME 删除指定的netns
ip netns exec NAME COMMAND:在指定的netns中运行命令
ip address 管理地址协议
ip address add 添加新地址
ip address {add|change|replace} IFADDR dev IFNAME [ LIFETIME ]
                                                      [ CONFFLAG-LIST ]
label NAME :为额外添加的地址指明接口别名;只有加上别名ifconfig才能显示网络接口信息
broadcast ADDRESS:广播地址;会根据IP和NETMASK自动计算得到
scope SCOPE_VALUE :作用域
  global:全局可用
  link:接口可用
  host:本机可用
ip address delete 删除地址
ip address show 查看地址
ip address flush 清空地址
ip route命令
ip route add:添加路由
ip route change 修改路由
ip route replace 修改或添加路由
ip route get 指明获取单条路由
ip route add  TYPE PREFIX via GW [dev IFACE] [src SOURCE_IP]
[root@Centos-7-24 ~]# ip route add 192.168.0.0/24 via 10.0.0.2 dev ens37
[root@Centos-7-24 ~]# ip route list
default via 10.0.0.2 dev ens33 proto static metric 100
default via 10.0.0.2 dev ens37 proto dhcp metric 101
10.0.0.0/24 dev ens37 proto kernel scope link src 10.0.0.30
10.0.0.0/24 dev ens33 proto kernel scope link src 10.0.0.24 metric 100
192.168.0.0/24 via 10.0.0.2 dev ens37  --通过ens37接口上的两个地址下一次为2去访问,可以指明网络接口SRC去访问
ip route delete:删除路由
[root@Centos-7-24 ~]# ip route del 192.168.0.0/24 dev ens37
ip route show/list:显示路由表
TYPE PRIFIX
[root@Centos-7-24 ~]# ip route show src 10.0.0.24
10.0.0.0/24 dev ens33 proto kernel scope link metric 100
ip  route flush 清空路由表
TYPE PRIFIX
ip route get 获取指定单个路由
ip route get 192.168.0.0/24
ss命令
ss [options] [ FILTER ]
-t :TCP
-u:UDP
-w:raw socket 相关连接
-a所有状态连接
-n数字显示
-p相关程序及PID
-e扩展格式信息
-m内存用量
-o 计时器信息
TCP常见状态
TCP FSM
LISTEN:监听
ESTABLISHED 建立的连接
FIN_WAIT1:等待完成1
FIN_WAIT2:等待 完成2
SYS_SENT:发送同步信号
SYS_RECV:接收同步信号
CLOSED:关闭
EXPRESSION
dprot 目标端口
sprot 源端口中
例:'( dport =:22 or sport=:22 )'
[root@Centos-7-24 ~]# ss -tan state ESTABLISHED '( dport = :22 or sport = :22 )'
Recv-Q Send-Q                                                  Local Address:Port                                                                 Peer Address:Port              
0      96                                                          10.0.0.24:22                                                                       10.0.0.1:14083   
通过修改配置文件来配置网络属性:
/etc/sysconfig/network-scripts/ifcfg-IFACE
通过大量参数来定义接口的属性,其可通VIM等文本编辑器直接修改,也可以使用专用的命令进行修改
(centos6  system-config-network(setup),centos7 nmtui)
/etc/sysconfig/network-scripts/route-IFACE路由
注:DEVICE名字必须与ifcfg-IFACE 名一致
ifcfg-IFACE文件参数:
ONBOOT:是否激活此接口
NETBOOT:是否支持网络引导
BOOTPROTO:激活此接口时使用什么协议来配置接口属性,常用的有dhcp\bootp\static\none
TYPE:接口类型,常见的有Ethernet,Bridge
PEERDNS:如查BOOTPROTO的值为“dhcp”,是否允许dhcp server分配的dns服务器指向覆盖本地手动指定的DNS服务器指向;默认为允许
网络服务:network/NetworkManager
chkconfig --list:查看所有服务的状态
管理网络服务
Centos 6 service SERVICE start/stop/status/restart
centos  7 systemctl start network
配置文件修改后,如需生效,要重启网络服务
systemctl restart network
能过配置文件配置非默认网关路由:/etc/sysconfig/network-scripts/route-IFACE路由
支持两种配置方式,但不可混用
1)每行一个路由条目
TARGET via GW
vim route-ens37
例:
ip route 192.168.1.0/24 via 10.0.0.2
2)每三行一个路由条目
ADDRESS#=TRAGET
NETMASK#=MASK
GATEWAY#=NEXTHOP
例:
vim route-ens37
ADDRESS0=20.0.0.0 第一组
NETMASK0=255.0.0.0
GATEWAY=192.168.10.2
给接口配置多个地址
ip addr之外,ifconfig或配置文件都可以
1)ifconfig IFACE_LABEL IPADDR/NETMASK
IFACE_LABEL:eth0:0,eth0:1...
2)为别名添加配置文件
DEVICE=IFACE_LABEL
注:BOOTPROTO:网卡别名不支持动态获取地址
static,none
nmcli命令
nmcli [OPTIONS...] {help | general | networking | radio | connection | device | agent | monitor} [COMMAND] [ARGUMENTS...]
nmcli device {status | show | set | connect | reapply | modify | disconnect | delete | monitor | wifi | lldp} [ARGUMENTS...] 接口状态
[root@Centos-7-24 network-scripts]# nmcli device status --查看所有网络接口状态
DEVICE  TYPE      STATE      CONNECTION         
ens33   ethernet  connected  ens33              
ens37   ethernet  connected  Wired connection 1
lo      loopback  unmanaged  --            
connection 管理网络连接
nmcli connection {show | up | down | modify | add | edit | clone | delete | monitor | reload | load | import | export} [ARGUMENTS...]
[root@Centos-7-24 network-scripts]# nmcli connection show
NAME                UUID                                  TYPE      DEVICE
ens33               2ce372ec-7092-4d3b-80aa-623f315686ab  ethernet  ens33  
Wired connection 1  94875288-78a4-3631-9f5f-aa159486c9d1  ethernet  ens37
如何修改IP地址属性
#nmcli conn modify IFACE [+|-]setting.property value
ipv4.address
ipv4.gateway
ipv4.dns1
ipv4.method
 
posted @ 2020-10-23 15:16  扬帆直上  阅读(953)  评论(0)    收藏  举报