LINUX 网络

LINUX 网络

网络配置命令

ifconfig

来源于net-tools

[root@localhost ~]# yum install net-tools -y  	

ifconfig 查看网卡信息,只显示开启的网卡

ifconfig -a 查看所以网卡信息

ifconfig 网卡名称 up|down 开启|关闭网卡

[root@localhost ~]# ifconfig ens33
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.16.208.10  netmask 255.255.255.0  broadcast 172.16.208.255
        inet6 fe80::20c:29ff:fe18:5d4b  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:18:5d:4b  txqueuelen 1000  (Ethernet)
        RX packets 506344  bytes 721848762 (688.4 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 200681  bytes 12970234 (12.3 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ip

查看网卡 信息

[root@localhost ~]# ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT qlen 1
    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 qlen 1000
    link/ether 00:0c:29:18:5d:4b brd ff:ff:ff:ff:ff:ff
3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN mode DEFAULT qlen 1000
    link/ether 52:54:00:d8:35:eb brd ff:ff:ff:ff:ff:ff
2 ip addr 网络层
[root@localhost ~]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:18:5d:4b brd ff:ff:ff:ff:ff:ff
    inet 172.16.208.10/24 brd 172.16.208.255 scope global ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe18:5d4b/64 scope link 
       valid_lft forever preferred_lft forever

hostname

查看或设置主机名

hostname 主机名

[root@localhost ~]# hostname aa
[root@localhost ~]# bash
[root@aa ~]# 

通过修改 配置文件/etc/hostname来修改主机名字

[root@aa ~]# vim /etc/hostname			#通过配置文件修改为永久修改

或通过hostnamectl命令来修改主机名称

[root@aa ~]# hostnamectl set-hostname www.bdqn.com
[root@aa ~]# bash
[root@www ~]# 

查看链接状态

ss

格式:

ss -natp|naup 端口号 #查看特定的端口号

选项:

-t: tcp协议相关 只显示 tcp协议
-u: udp协议相关 只显示 udp

-a: 所有状态
-n: 数字格式
-p: 相关的程序及PID

-e: 扩展的信息
-m:内存用量
-o:计时器信息

[root@www ~]# ss -natp
State       Recv-Q Send-Q Local Address:Port               Peer Address:Port              
LISTEN      0      128         *:111                     *:*                   users:(("systemd",pid=1,fd=61))
LISTEN      0      5      192.168.122.1:53                      *:*                   users:(("dnsmasq",pid=1458,fd=6))
LISTEN      0      128         *:22                      *:*                   users:(("sshd",pid=1152,fd=3))
LISTEN      0      128    127.0.0.1:631                     *:*                   users:(("cupsd",pid=1151,fd=12))
LISTEN      0      100    127.0.0.1:25                      *:*                   users:(("master",pid=1415,fd=13))
netstat

-a:显示主机中所有活动的网络连接信息

-n:以数字的形式显示相关的主机地址、端口等信息

-t:查看 TCP相关的信息

-u:显示 UDP协议相关的信息

-p:显示与网络连接相关联的进程号、进程名称信息(该选项需要 root 权限)

[root@www ~]# netstat -natp
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      1/systemd           
tcp        0      0 192.168.122.1:53        0.0.0.0:*               LISTEN      1458/dnsmasq        
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1152/sshd           
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      1151/cupsd          

可以通过|grep 来单独搜索链接状态

route

查看或设置主机中路由表信息

route [-n]

单独使用route可查看所以路由信息
[root@www ~]# route 
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         gateway         0.0.0.0         UG    100    0        0 ens33
172.16.208.0    0.0.0.0         255.255.255.0   U     100    0        0 ens33
172.16.208.0    0.0.0.0         255.255.255.0   U     300    0        0 bond0
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0
#ip地址		   #网关			 #子网掩码                                 #对应网卡
永久添加路由

通过修改配置文件 /etc/sysconfig/network-scripts/route-ens* 来永久修改

[root@localhost ~]#vim /etc/sysconfig/network-scripts/route-ens33
添加:10.0.0.0/24 via 192.168.91.2
[root@www network-scripts]# systemctl restart network		#重新加载服务

tcpdump

Linux中的抓包工具

格式:

tcpdump option proto dir type
选项 协议 数据的方向 抓取的数据类型

选项(option)
-i 指定网卡
-w 将捕获信息保存到文件中,且不分析核打印在屏幕上
-r 读取上面存储的文件
-t:在每行的输出中,不显示时间 -tt:输出一个时间 -ttt:每行之间都输出时间 -tttt:输出详细时间
-n:直接显示ip -nn:直接显示IP和端口号
-q 简洁的输出
proto(协议)

1.tcp/udp/icmp

2.ip协议

dir(数据的方向)

1.src(源地址的数据)

2.dst(目的地址的数据)

3scr and dst (源地址到目的地址的数据)

type(抓取的数据类型)

1.host (主机)

2.net (网段)

3.port (端口)

DHCP

为动态主机配置协议,1、DHCP客户端:通常为网络中的PC、打印机等终端设备,使用从DHCP服务器分配下来的IP信息,包括IP地址、DNS等。2、DHCP服务器:所有的IP网络设定信息都由DHCP服务器集中管理,并处理客户端的DHCP请求。DHCP采用UDP作为传输协议,客户端发送消息到DHCP服务器的的67号端口,服务器返回消息给客户端的68号端口。

如何建立DHCP服务

下载安装DHCP程序
[root@localhost /]# yum install dhcp -y
[root@localhost ~]#vim /etc/dhcp/dhcpd.conf 
#空的
#
# DHCP Server Configuration file.
#   see /usr/share/doc/dhcp*/dhcpd.conf.example
#       在此目录下有配置模板
#   see dhcpd.conf(5) man page
#
~                                   
[root@localhost ~]#cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf 
cp:是否覆盖"/etc/dhcp/dhcpd.conf"? y
#将文件拷贝过来覆盖

打开DHCP的ipv4的配置文件
[root@localhost ~]# vim /etc/dhcp/dhcpd.conf 
# option definitions common to all supported networks...
option domain-name "example.org";
option domain-name-servers ns1.example.org, ns2.example.org;
修改dns:把ns1.example.org, ns2.example.org改为设置的dns。
将27行修改为
#subnet为本机的ip所在网段 netmask为本机的子网掩码
subnet 192.168.10.0 netmask 255.255.255.0 {
  range 192.168.10.100 192.168.10.150;
  option routers 192.168.10.254;	#本机的网关
  option domain-name-servers 110.110.110.110;	
  #本机子配置的DNS
} 
:wq
重启DHCP服务
***************************************************
检验是否成功
[root@localhost network-scripts]# ifconfig 
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.10.20  netmask 255.255.255.0  broadcast 192.168.10.255

[root@localhost network-scripts]# systemctl restart network
[root@localhost network-scripts]# ifconfig 
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.10.100  netmask 255.255.255.0  broadcast 192.168.10.255

同步时间

通过于时间同步服务器同步时间

[root@localhost ~]# date -s '12 year'
2036年 04月 25日 星期五 16:33:44 CST
[root@localhost ~]# ntpdate ntp.aliyun.com
25 Apr 16:35:33 ntpdate[10547]: step time server 203.107.6.88 offset -378691199.995819 sec
[root@localhost ~]# date
2024年 04月 25日 星期四 16:35:48 CST

bond 多网卡绑定

将多块网卡绑定同一IP地址对外提供服务,可以实现高可用或者负载均衡。直接给两块网卡设置同一IP地址是不可以的。

Bonding聚合链路工作模式

mod=0 #轮询

mod=1 #主-备

mod=2 #平衡

等等等等

列子:
###通过配置文件修改

cd   /etc/sysconfig/network-scripts/

vim ifcfg-bond0 
NAME=bond0
TYPE=bond
DEVICE=bond0
BOOTPROTO=none
IPADDR=192.168.91.22
NETMASK=255.255.255.0
GATEWAY=192.168.91.2
BONDING_OPTS="mode=1 miimon=100 fail_over_mac=1"

vim ifcfg-ens33
BOOTPROTO=static
NAME=ens33
DEVICE=ens33
ONBOOT=yes
MASTER=bond0
SLAVE=yes

vim ifcfg-ens36
NAME=ens36
DEVICE=ens36
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
ONBOOT=yes
*****************************************************************************************
[root@localhost ~]# ifconfig bond0
bond0: flags=5187<UP,BROADCAST,RUNNING,MASTER,MULTICAST>  mtu 1500
        inet 172.16.208.200  netmask 255.255.255.0  broadcast 172.16.208.255
        inet6 fe80::20c:29ff:fe18:5d4b  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:18:5d:4b  txqueuelen 1000  (Ethernet)
        RX packets 488  bytes 47365 (46.2 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 362  bytes 47469 (46.3 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

使用命令添加

#添加bonding接口
nmcli con add type bond con-name mybond0 ifname bond0 mode active-backup ipv4.method manual ipv4.addresses 192.168.91.123/24 
#添加从属接口
nmcli con add type bond-slave ifname ens33 master bond0
nmcli con add type bond-slave ifname ens36 master bond0
#注:如无为从属接口提供连接名,则该名称是接口名称加类型构成
#要启动绑定,则必须首先启动从属接口
nmcli con up bond-slave-ens33
nmcli con up bond-slave-ens36
#启动绑定
nmcli con up mybond0
posted @ 2024-04-29 14:28  红荼  阅读(3)  评论(0编辑  收藏  举报