Linux基础网络管理
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux基础网络管理相关的知识,希望对你有一定的参考价值。
1.将linux主机接入到网络,需要配置网络相关设置
一般包括:
主机名
IP/NETMASK
路由:默认网关
DNS服务器
主DNS服务器
次DNS服务器
次次DNS服务器
2.静态指定:
ifcfg:ifconfig,route,netstat
ip:object{link,addr,route},ss,tc
system-config-network-tui(setup)
配置文件
Centos 7:网络配置工具
nmcli,nmtui,nm-connection-editor
动态分配:
DHCP:Dynamic Host Configuration Protocol
ifconfig:
ifconfig -a
ifconfig eth0 (up|down)
ifconfig eth0 IP/NETMASK [up|down]
#立即生效
route命令:
查看路由:route -n
添加路由:route add
route add [-net|-host] target [netmask Nm] [gw Gw][[dev] If]
目标:10.1.249.112网关:10.1.0.1
[[email protected] ]# route add -host 10.1.249.112 gw 10.1.0.1 dev eth0
目标:10.1.249.0 网关:10.1.0.1
[[email protected] ]# route add -net 10.1.249.0 netmask 255.255.0.0 gw 10.1.0.1 dev eth0
[[email protected] ]# route add -net 10.1.249.0/16 gw 10.1.0.1 dev eth0
默认路由网关10.1.0.1
[[email protected] ]# route add -net 0.0.0.0 netmask 0.0.0.0 gw 10.1.0.1
[[email protected] ]# route add default gw 10.1.0.1
删除目标:10.1.249.112 网关:10.1.0.1
[[email protected] ]# route del host 10.1.249.112
删除目标:10.1.249.0 网关:10.1.0.1
[[email protected] ]# route del -net 10.1.249.0 netmask 255.255.0.0
netstat命令:
netstat -print network connections,routing tables,interface statistics,masquerade connections,and multicast memberships
显示网络连接:
netstat [--tcp|-t] [--udp|-u] [--raw|-w] [--listening|-l] [--all|-a] [--numeric|-n][--extend|-e] [--program|-p]
-t:tcp协议相关
-u:ucp协议相关
-w:raw socket相关
-l:处于监听状态
-a:所有状态
-n:以数字显示IP和端口
-e:扩展格式
-p:显示相关进程及PID
netstat常用组和:
-tan tcp协议相关,所有状态,以数字显示IP和端口
-uan ucp协议相关,所有状态,以数字显示IP和端口
-tnl tcp协议相关,以数字显示IP和端口,处于监听状态
-unl ucp协议相关,以数字显示IP和端口,处于监听状态
显示接口统计数据:
netstat -i 显示全部接口数据
netstat -I=eth0 显示eth0接口数据
ifconfig -s eth0 显示eth0接口数据
设置IP命令:
ifup eth0 开启eth0端口
ifdown eth0 关闭eth0端口
设置临时IP:
ip addr add 10.1.249.111/16 dev eth0 label eth0:0
删除临时IP:
ip addr del 10.1.249.111/16 dev eth0 label eth0:0
ip addr flush dev eth0 label eth0:0
ss命令:
netstat通过遍历proc来获取socket信息,ss使用netlink与内核tcp_diag模块通信获取socket信息
选项:
-t tcp协议相关
-u udp协议相关
-w 裸套接字相关
-x unix sock相关
-l listen状态的链接
-a 所有
-n 数字格式
-p 相关的程序及PID
-e 扩展的信息
-m 内存用量
-o 计时器信息
常用组合:
-tan tcp协议相关,所有,数字个格式
-tanl tcp协议相关,所有,数字个格式,listen状态的链接
-tanlp tcp协议相关,所有,数字个格式,listen状态的链接相关的程序及PID
-uan ucp协议相关,所有,数字个格式
常见用法:
ss -l 显示本地打开的所有端口
ss -pl 显示每个进程具体打开的socket
ss -t -a 显示所有tcp socket
ss -u -a 显示所有ucp socket
ss -s 列出当前socket详细信息
ss -o state established ‘( dport = :ssh or sport = :ssh )‘ 显示所有已建立的ssh链接
ss -o state established ‘( dport = :http or sport = :http )‘ 显示所有已建立的http链接
TCP常见状态:
tcp finite state machine:
LISTEN:监听
ESTABLISHED :已建立的链接
FIN_WAIT_1 :等待远程TCP链接中断请求,或先前的链接中断请求的确认
FIN_WAIT_2 :从远程TCP等待链接中断请求
CLOSE-WAIT :等待从本地用户发来的链接中断请求
CLOSING :等待远程TCP对链接中断的确认
LAST-ACK :等待原来的发向远程TCP的链接中断请求的确认
TIME-WAIT :等待足够的时间以确保远程TCP接收到的链接中断请求的确认
SYN-SENT :客户端SYN_SENT状态
SYN-RECV :服务端被动打开后,接收到了客户端的SYN并且发送了ACK时的状态。
SYN-RECEIVED :服务器端状态SYN_RCVD 如果发现有很多SYN_RCVD状态,那你的机器有可能被SYN Flood的DoS(拒绝服务攻击)攻击了
CLOSEDss :没有任何连接状态
3.网络配置文件
ONBOOT: 在系统引导时是否激活此设备
TYPE : 接口类型;常见有的Ethernet, Bridge
UUID : 设备的惟一标识
IPADDR: 指明IP地址
NETMASK:子网掩码
GATEWAY: 默认网关
DNS1: 第一个DNS服务器指向
DNS2: 第二个DNS服务器指向
USERCTL:普通用户是否可控制此设备
PEERDNS:如果BOOTPROTO的值为“ dhcp”,是否允许
dhcp server分配的dns服务器指向信息直接覆盖至/etc/resolv.conf文件中
网卡配置文件/etc/sysconfig/network-scripts
解析器执行正向和逆向查询:
/etc/hosts
本地主机名数据库和IP地址的映像
对小型独立网络有用
通常,在使用DNS前检查,getent hosts 查看/etc/hosts 内容
4.网卡相关命令:
网络接口识别并命名相关的udev配置文件
/etc/udev/rules.d/70-persistent-net.rules
查看网卡:
dmesg |grep –i eth
ethtool -i eth0
卸载网卡驱动:
modprobe -r e1000
rmmod e1000
装载网卡驱动:
modprobe e1000
5.使用传统命名方式:
(1) 编辑/etc/default/grub配置文件GRUB_CMDLINE_LINUX="rhgb quiet net.ifnames=0"或:修改/boot/grub2/grub.cfg
(2) 为grub2生成其配置文件grub2-mkconfig -o /etc/grub2.cfg
(3) 重启系统
本文出自 “Linux学习之路” 博客,请务必保留此出处http://luyubo.blog.51cto.com/7634254/1847180
以上是关于Linux基础网络管理的主要内容,如果未能解决你的问题,请参考以下文章