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基础网络管理的主要内容,如果未能解决你的问题,请参考以下文章

Linux网络管理-基础

Linux网络服务01——Linux网络基础设置

Linux用户管理Linux网络基础

Linux网络服务01——Linux网络基础设置

Linux网络配置基础篇

Linux 基础——Linux简介目录管理文件管理