- 网络管理
- 1.1 网络接口的命令的方式
- 1.2 ifcfg家族
- ifconfig
- route
- 1.1.1.3 DNS
- netstat
- ping
- traceroute
- nslookup
- 永久修改路由
- 给网卡绑定多个 ip 地址
- 绑定 mac 地址和 ip 地址
- IP家族
- link
- addr
- route
- ss
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
张贺,多年互联网行业工作经验,担任过网络工程师、系统集成工程师、LINUX系统运维工程师
个人网站:www.zhanghehe.cn
笔者微信:zhanghe15069028807,现居济南历下区
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
网络管理
网络功能都在内核当中
1.1 网络接口的命令的方式
早期的内核是通过网络的mac地址来命名的,centos5,6都是用eth开头,如果主机上原本有一个网卡被内核命名为eth0,结果这个网卡坏了拿下来之后在原本的地方又放了一个新的网卡,那么他还是eth0吗?不是,很有可能被内核识别成为eth1,因为内核是通过网卡的mac地址来识别网卡的。centos7改了命名方式,这种方式根据插槽来命名,也就是说在一个插槽上的任意网卡都是一个名字。
1.2 ifcfg家族
ifconfig
ifconfig 仅显示本机活动接口的地址
ifconfig -a显示本机活动与不活动的接口的地址
ifconfig eth0 显示eth0的属性信息
ifconfig eth0 192.168.80.6/24 配置ip和掩码
ifconfig eth0 {up|down} 网卡打开关闭
混杂模式:
ifconfig promisc启用混杂模式,不是给自己的数据包也会留下
ifconfig –promisc 关闭混杂模式,只接收给自己的数据包
route
路由管理命令
route add default gw 192.168.80.1 添加默认路由
route add -net 0.0.0.0/24 gw 192.168.80.1 dev ens33 添加默认路由
route add -host 192.168.1.3 gw 192.168.80.1 dev ens33 添加主机路由
[root@localhost ~]# route -n
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.80.1 0.0.0.0 UG 0 0 0 ens33
192.168.1.3 192.168.80.1 255.255.255.255 UGH 0 0 0 ens33
U代表up开户状态
G代表这是个路由条目
H这是一个主机路由
route add -net 192.168.10.0/24 gw 192.168.80.1 dev ens33 添加网络路由
[root@localhost ~]# route -n
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.10.0 192.168.80.1 255.255.255.0 UG 0 0 0 ens33
route del -host 192.168.1.3 删除主机路由
route add -net 192.168.50.0/24 gw 192.168.80.1 dev ens33 删除网络路由
route del -net 0.0.0.0 gw 192.168.80.1 netmask 255.255.255.0 删除默认路由
默认网关如果有两个,后面那个是不会有作用的。
1.1.1.3 DNS
[root@localhost ~]# echo "nameserver 223.6.6.6">/etc/resolv.conf
当配置完成DNS之后我们进行测试,测试的命令有两种:
FQDN(安全限定域名)--->ip这种方式叫正解,所谓的完全限定域名就是像. www是主机名,baidu是域名。把ip解析成完全限定域名的方式叫反解。测试的命令有两种:
dig –t A [www.baidu.com](http://www.baidu.com) #解析出百度的IP
dig –x 223.6.6.6 #通过此ip地址解析出完全限定域名
host –t A [www.baidu.com](http://www.baidu.com) #解析出百度的IP
host –t PTR 223.6.6.6 #通过此ip地址解析出完全限定域名
netstat
- l -t :显示tcp协议相关
- l -u:显示udp协议相关
- l -w:raw socket裸套节字相关,裸套节字就能通过程序不经过传输层直接使用IP地址
- l -l:处于监听的状态
- l -a:所有状态
- l -n:以数字显示ip和端口
- l -e:扩展格式
- l -p:显示相关进程及PID
常用的组合:
- l -tan以数字显示与tcp相关的所有状态
- l -tnl以数字显示与tcp相关处于监听状态的端口
- l -tnlp:这个最应该记下来
ping
l 我们通过 ping 查看一下往返时间,在局域网当中如果超过 10 毫秒的话就不正常了。
- l -c # 指定发包的次数
- l -s # 指定 ping 包的大小,默认 64 个字节
- l -t # 指定 TTL 值
- l -i # 指定等待几秒发一个 ping 包
- l -w # 指定 ping 命令执行多长秒结束
测试通过的每一个路由器和测试对方的什么操作系统
traceroute
跟踪数据包,查看沿途过了哪些路由器,常用于排错 不通的地方使用标识,traceroute 如果通过 NAT 的时候会出现号 使用的时候直接使用 traceroute 后面加上要跟踪的 IP 地址即可 。
nslookup
测试 DNS 是否正常,测试 DNS 是否能解析域名也可以直接使用 ping,看看能不能解析出域名,有的服务器不允许 ping,这没有关系,我们要看的是第一行,看看有没有解析出域名即可。 nslookup 是专门用来测试 NDS 的,后面直接跟上域名即可。
nslookup www.baidu.com
永久修改路由
如果有多块网卡的话根据需要创建多个路由配置文件,路由配置文件默认是没有的,所
以要进行创建,创建只能在/etc/sysconfig/network-scripts/这个目录里面创建一个 route-<网卡>的文件。如果我们只能一个网卡的话一般就是 eth0,就可以创建:/etc/sysconfig/network-scripts/route-eth0 文件,如下:
vim /etc/sysconfig/network-scripts/route-eth0
0.0.0.0/0 via 192.168.80.1 默认路由 via 是下一跳
192.168.100.0/24 via 192.168.80.1 网络路由
192.168.200.2/32 via 192.168.80.1 主机路由
note:同样的,也需要进行网络服务重启才能生效,如果配置路由之前没有在网卡的配置文件当中配置 ip 地址等信息的话,即使在这里设置了路由也不会生效的,想想也很简单嘛!没有 ip 地址怎么能配置网关呢?
给网卡绑定多个 ip 地址
使用场景,一个服务器上有多个公司网站,想使用多个 ip 分别访问。就是使用子接口嘛!与路由器差不多,网络地址不一样,mac 地址是一样的,在网络服务重启之后通过命令添加的子接口失效,但我们可以配置文件让其永久不失效。 比如原来有个网卡 eth0,那么加一个子接口就是 eth0:# #号从 0 开始,举个例子:
l 临时给网卡添加多个IP
ifconfig eth0:0 192.168.80.7/24 在 eth0 上加一个新的 ip 地址
ifconfig eth0:0 down 关闭这个子接口,up 之后也失效了,物理接口并不会
l 永久给网卡添加多个IP
永久给网卡添加多个 ip 地址,把物理网卡的配置文件 cp 一份做为子接口的配置文件,然后在子接口的配置文件里面把:设备名修改成子接口的名字、IP 修改、子网掩码一定要有,然后重启网卡即可。
cd /etc/sysconfig/network-scripts/
cp ifcfg-eth0 ifcfg –eth0:0 #不要忘记修改这个网络配置文件+4
vim ifcfg-eth0:0
service network restart
绑定 mac 地址和 ip 地址
防止 arp 欺骗的重要手段 arp –a 查看缓存的 mac 地址 arp –s 192.168.80.1 ##:##:##:##绑定 mac 地址,重启无效
cat /proc/net/arp
arp –d 192.168.80.1 删除绑定的 mac 地址
永久绑定
vim /etc/ethers
192.168.80.66 ##:##:##:##
重启之后依然有效
IP家族
link
子命令:
show: ip link show {dev eth0 | up | down} #查看eth0接口地址,开启的接口,关闭的接口
set :ip link set {up | down} dev eth0 #关闭或者开户eth0接口
[root@LAMP ~]# ip link set down dev eth0 #除了down当然还有up
addr
ip addr {add|del|show}
#ip addr的使用格式,如果有地址默认是追加,而不是覆盖[root@LAMP ~]# ip addr del 192.168.80.10/24 dev eth0 label 'eth0:0'
linux的地址其实是配置在内核当中的
[root@LAMP ~]# ip addr add 192.168.80.100/24 dev eth0 label 'eth0:1'
[root@LAMP ~]# ip addr flush dev eth0 label eth0:1
route
[root@LAMP ~]# ip route add 0.0.0.0/0 via 192.168.80.1 dev eth0 #添加默认路由
[root@LAMP ~]# ip route add default via 192.168.80.1 #添加默认路由
[root@LAMP ~]# ip route add 192.168.90.0/24 via 192.168.80.1 dev eth0 #添加网络路由
[root@LAMP ~]# ip route add 192.168.100.1 via 192.168.80.1 dev eth0 #添加主机路
[root@LAMP ~]# ip route flush 0.0.0.0/0 via 192.168.80.1 #删除默认路由
[root@LAMP ~]# ip route flush default via 192.168.80.1 #删除默认路由
[root@LAMP ~]# ip route flush 192.168.1.1 #删除主机路由
[root@LAMP ~]# ip route flush 192.168.200.0 #删除主机路由
[root@LAMP ~]# ip route show
[root@LAMP ~]# ip route flush dev eth0
ss
ss -tan state ESTABLISHED
检查套接字的工具