文章目录
1.两大网络工具集1.1 对比图1.2 net-tools1.2.1 ifconfig1.2.2 route1.2.3 arp1.2.4 netstat1.2.5 vconfig1.2.6 iwconfig1.3 iproute21.3.1 ip1.3.2 ss1.3.3 iw1.3.4 tc2.配置网络正确步骤2.1 IP2.2 NETMASK2.3 GATEWAY2.4 DNS2.5 dns后缀2.6 主机名2.7 /etc/hosts3.其他网络工具3.1 nmap3.2 wireshark3.3 tcpdump4.网卡高级特性4.1 添加物理网卡4.2 克隆虚拟机4.3 网卡别名4.4 网卡绑定bonding4.4.1 工作模式4.4.2 配置步骤1.两大网络工具集
1.1 对比图
1.2 net-tools
net-tools是一套标准的UNIX网络工具集,用于配置网络接口、设置路由表信息、管理ARP表、显示和统计各类网络信息,等等
1.2.1 ifconfig
语法: ifconfig [INTERFACE] option [up|down]
ifconfig eth0 down
禁用网卡ifconfig eth0 up
激活网卡ifconfig eth0 10.1.1.1 netmask 255.255.255.0
设置网卡地址(临时)
1.2.2 route
查看/管理路由表
route -n
查看, -n 不做名称解析
route add default gw NEXT-HOP
设置默认路由(临时)
route del
1.2.3 arp
arp -an
arp -s IP MAC
1.2.4 netstat
查看网络连接
netstat -tulnp t
tcp
常用基于tcp服务
ssh(22)
http(80)/https(443)
mysql(3306)
telnet(23)
ftp(20,21)u
udp
基于udp服务
dns(53)
dhcp(67,68)
tftp(69)l
listen,查看tcp/udp正在监听的连接n
numericp
programa
all status,tcp所有状态 netstat -ant
查看tcp所有状态连接netstat -rn
查看路由表
1.2.5 vconfig
管理vlan
1.2.6 iwconfig
管理无线网卡
1.3 iproute2
iproute2是另一个系列的网络配置工具,它旨在取代net-tools的功能。net-tools可以通过procfs(/proc)和ioctl系统调用,访问和更改内核网络配置,iproute2则通过网络链路套接字接口与内核进行联系。/proc接口比网络链路接口来得更笨拙。抛开性能不讲,iproute2的用户界面比net-tools的用户界面要来得直观。
1.3.1 ip
ip link管理链路层信息
ip link show
ip link set …ip addr
管理网络层信息
ip addr show
ip addr add
ip addr add 10.1.1.1/24 dev eth0
ip addr delip route
管理路由信息
ip route show
ip route add
ip route add 172.16.1.0/24 via 10.1.1.254
ip route delip rule
路由策略ip neigh
管理arp信息ip tunnel
ip隧道p maddrip mrouteip monitor
1.3.2 ss
类似netstat
ss -tulnp
1.3.3 iw
管理无线网卡
1.3.4 tc
流控管理 traffic contrl
tc命令:/pansaky/article/details/88801249
tc命令详解:/view/324fc91a964bcf84b9d57b01.html
2.配置网络正确步骤
2.1 IP
通过命令去配置(临时)
ifconfig
ip addr add
永久生效(修改网卡配置文件)
/etc/sysconfig/network-scripts/ifcfg-xxx
DEVICEUUIDBOOTPROTO #static,dhcp,noneIPADDRNETMASKGATEWAY=255.255.255.0PREFIX=24DNS1DNS2
需要重启网络服务使配置生效
service network restart
/etc/init.d/network restart
systemctl restart network
2.2 NETMASK
2.3 GATEWAY
网卡配置文件修改(ifcfg-xxx)
网络全局配置文件
/etc/sysconfig/network
NETWORKING=yes 网络功能总开关HOSTNAME=xxx 主机名GATEWAY=xxx 配置网关
命令修改
route add
ip route add
2.4 DNS
/etc/resolv.conf 不需要重启,即时生效
nameserver IP1 IP2
search DOMAIN (DNS后缀)
2.5 dns后缀
search Domain
当访问主机名自动加上域
search
ping www
ping
2.6 主机名
主机名.域名
修改主机名
1.修改配置文件/etc/sysconfig/network,需要重启生效HOSTNAME
2.不重启方法(推荐)
修改配置文件/etc/sysconfig/network
echo “HOSTNAME” > /proc/sys/kernel/hostname
2.7 /etc/hosts
dns解析流程1.先找本地dns解析器缓存(Windows)
ipconfig/displaydns
ipconfig/flushdns
2.hosts文件
3.DNS服务器将主机名和环回地址映射写入hosts文件不需要重启,即时生效格式
IP HOSTNAME1 HOSTNAME2…windows修改hosts
C:\Windows\System32\drivers\etc\hosts
3.其他网络工具
3.1 nmap
端口扫描工具
3.2 wireshark
抓包
命令行: tshark
3.3 tcpdump
抓包工具
语法: tcpdump [options] [expression]
选项
-w FILE 保存为文件-c COUNT 数据包数量-C FILESIZE 文件大小-i INTERFACE 指定接口-v verbose详细信息-vv-vvv
[expression]
过滤协议
tcpudpicmpether
过滤端口
port Nsrc portdst port
过滤主机
hostsrc host x.x.x.xdst host x.x.x.x
逻辑运算
与 : && or and或 : || or or非 : ! or not
tcpdump -i eth1 '((tcp) and (port 80) and ((dst host 192.168.1.254) or (dst host 192.168.1.200)))'tcpdump -i eth1 '((icmp) or ((ether dst host 00:01:02:03:04:05)))'tcpdump -i eth1 '((tcp) and ((dst net 192.168) and (not dst host 192.168.1.200)))'
tcp[tcpflags] = tcp-syn 只抓 SYN 包
tcpdump -i eth1 ‘tcp[tcpflags] & tcp-syn != 0 and tcp[tcpflags] & tcp-ack != 0’ 抓 SYN, ACK
4.网卡高级特性
4.1 添加物理网卡
1.关机
2.添加网卡设备,启动系统
3.查看网卡是否被内核识别(cat /etc/udev/rules.d/70-persistent-net.rules)
4.手动创建网卡配置文件(根据rules文件中的NAME决定网卡命名)
4.2 克隆虚拟机
克隆机需要配置才能正常使用网络
1.rm -rf /etc/udev/rules.d/70-persistent-net.rules
2.网卡配置文件删除HWADDR,UUID
3.重启虚拟机
4.3 网卡别名
为同一个网卡设备配置的多个不同ip地址,实现类似子接口之类的功能。
网卡别名命名
eth0:0 eth0:1 eth0:2 …配置步骤
1.创建网卡别名的配置文件
ifcfg-eth0:0
NAME=eth0:0简单配置
ifconfig eth0:0 IP NETMASK
4.4 网卡绑定bonding
将多块物理网卡通过bond实现负载均衡,或高可用,通过定义bonding的算法模式来决定数据包通过bonding网卡的工作流程
4.4.1 工作模式
mode0
Round-robin policy 轮询策略,需要交换机支持
mode1
Active-backup policy 主备
mode6
适配器适应负载均衡,不需要交换机支持
4.4.2 配置步骤
1.修改各个网卡配置文件
# vi /etc/sysconfig/network-scripts/ifcfg-bond0DEVICE=bond0BOOTPROTO=noneONBOOT=yesIPADDR=10.10.10.1NETMASK=255.255.255.0# vi /etc/sysconfig/network-scripts/ifcfg-eth0DEVICE=eth0BOOTPROTO=noneMASTER=bond0SLAVE=yes# vi /etc/sysconfig/network-scripts/ifcfg-eth1DEVICE=eth1BOOTPROTO=noneMASTER=bond0SLAVE=yes
2.修改modprobe相关设置,使内核加载bonding模块
1.在这里,我们直接创建一个加载bonding的专属设定文件/etc/modprobe.d/bonding.conf# vi /etc/modprobe.d/bonding.confalias bond0 bondingoptions bonding mode=0 miimon=2002.加载模块(重启系统后就不用手动再加载了)modprobe bonding3.确认模块是否加载成功:lsmod | grep bondingbonding132508 0
截图
3.重启确认
4.查看bonding状态
cat /proc/net/bonding/bond0
截图
注意: 虚拟机添加网卡,删除网卡别名配置
1.关机
2.添加网卡设备
3.查看内核关于网卡文件
cat /etc/udev/rules.d/70-persistent-net.rules
4.创建新网卡配置文件
删除HWADDR,UUID两行,配置IP,掩码等参数