:Linux网络基础总结(常用配置文件&常用命令)

系统 2126 0

原始出处: http://opsmysql.blog.51cto.com/2238445/1214496

一、网络配置文件

1. /etc/sysconfig/network  文件

功能:设置主机最基本的网络信息,包括主机名、默认网关等信息

内容:

NETWORKING= yes/no 设定启动系统时是否启用网络服务

HOSTNAME= www.mysqlopNaN 设定主机名(不是NETBIOS名)

GATEWAY= 192.168.0.1 设定默认网关

GATEWAYDEV= eth0 设定网关接口

FORWARD_IPV4= yes/no 设定LINUX是否支持IP转发

 

2. /etc/sysconfig/network-scripts/ifcfg-ethX(X 取值0,1,2,…….n)

功能:用于配置以太网接口卡的初始信息,。

内容:

ONBOOT= yes 在设定启动时,是否激活网卡

DEVICE= eth0 设定物理设备名称

BOOTPROTO= none|static|dhcp|bootp 设定网卡启动协议

NETMASK= 255.255.255.0 设定子网掩码

BROADCAST= 192.168.3.255 设定广播码

NETWORK= 192.168.3.0 设定网络号

IPADDR= 192.168.3.2 设定主机IP

3. /etc/resolv.conf

功能:域名服务客户端的配置文件,用于指定域名服务器的位置

内容:

domainnamelinux.cn 设定主机域名

searchlinux.cn 设定搜索列表

nameserver192.168.0.254 设定DNS服务器的IP(最多三个)

 

4. /etc/hosts

功能:IP地址和主机名的映射

内容:

127.0.0.1localhost.localdomain syslog

::1localhost6.localdomain6localhost6

192.168.2.100 MySQL-HK-001

192.168.2.110 MySQL-HK-011

 

5. /etc/ modprobe.conf & /etc/modprobe.d/

内核模块加载相关的配置文件

 

6. /etc/nsswitch.conf

/etc/nsswitch.conf 文件用于管理系统中多个配置文件的查找顺序,它比/etc/host.conf文件提供了更多的功能。/etc/nsswitch.conf中的每一行或者是注释(以#号开头),或者是一个关键字后跟冒号和一系列要试用的有顺序的方法。每一个关键字是在/etc/目录可以被/etc/nsswitch.conf控制的/etc文件的名字。

下面是可以被包含的关键字:

aliases  邮件别名;passwd 系统用户;group 用户组;shadow 隐蔽口令;hosts 主机名和IP地址;networks网络名称及号码;protocols 网络协议;services端口号码和服务名称;ethers 以太网号码;rpc 远程进程调用的名称和号码;netgroup 网内组。

 

7. /etc/services

/etc/services 中包含了服务名和端口号之间的映射,不少系统程序要使用这个文件。

 

二、常用的网络服务命令简单使用

1. ifconfig

功能:

显示网络接口的配置信息

激活/禁用某个网络接口

配置网络接口IP地址

格式:

# ifconfig[< 接口名>]

# ifconfig< 接口名>(up/down)

# ifconfig< 接口名>ip地址netmask子网掩码

实例:

(1) # ifconfig

(2) # ifconfig eth0

(3)  # ifconfig-a 显示所有接口的配置住处

(4) # ifconfig eth0 down

(5) # ifconfig eth0 192.168.3.3 netmask255.255.255.0 配置的地址立即生效,但重启网络服务或主机,都会失效

(6) # ifconfig eth0 192.168.120.56 netmask 255.255.255.0 broadcast 192.168.120.255

(7) # ifconfig eth0 hw ether00:AA:BB:CC:DD:EE 修改MAC地址

(8) #  启用和关闭ARP协议

ifconfig eth0 arp

ifconfig eth0 -arp

(9) # ifconfig eth0 mtu 1500 设置最大传输单元

一块网卡可以使用多个地址:

网络设备可以别名:

eth0

ethX:X,eth0:0, eth0:1, ...

配置方法:

ifconfigethX:X IP/NETMASK

/etc/sysconfig/network-scripts/ifcfg-ethX:X

DEVICE=ethX:X

 

2. ifup

功能:激活网络接口。

格式: ifup <设备名>

实例: # ifupeth0

3. ifdown

功能:禁用网络接口。

格式:ifdown <设备名>

实例:# ifdown eth0

 

4.  ping

功能:向目标主机发送icmp数据包(检测网络)

格式: ping  [- df nqrRv][-c< 完成次数>][-i<间隔秒数>][-I<网络界面>][-l<前置载入>][-p<范 本样式>][-s<数据包大小>][-t<存活数值>][主机名称或IP地址]

参数:

-d  使用Socket的SO_DEBUG功能
-c<完成次数>   设置完成要求回应的次数
-f   极限检测
-i<间隔秒数>   指定收发信息的间隔时间
-I<网络界面>   使用指定的网络界面送出数据包
-l<前置载入>   设置在送出要求信息之前,先行发出的数据包
-n   只输出数值
-p<范本样式>   设置填满数据包的范本样式
-q   不显示指令执行过程,开头和结尾的相关信息除外
-r   忽略普通的Routing Table,直接将数据包送到远端主机上
-R   记录路由过程
-s<数据包大小>  设置数据包的大小
-t<存活数值>   设置存活数值TTL的大小
-v   详细显示指令的执行过程

实例:

ping 192.168.1.1

ping -c 10  192.168.1.1 ping 指定次数

ping -c 10 -i 0.5 192.168.1.1ping 指定次数和时间间隔

ping -b 192.168.1.1ping 网关

ping -i 3 -s1024 -t 255 192.168.120.206#-i 3  发送周期为 3秒 -s 设置发送包的大小为1024 -t 设置TTL值为 255

 

5. netstat

功能:用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况

格式:# netstat[参数]

参数:

-a 或–all 显示所有连线中的Socket

-A< 网络类型>或–<网络类型> 列出该网络类型连线中的相关地址

-c 或–continuous 持续列出网络状态

-C 或–cache 显示路由器配置的快取信息

-e 或–extend 显示网络其他相关信息

-F 或–fib 显示FIB

-g 或–groups 显示多重广播功能群组组员名单

-h 或–help 在线帮助

-i 或–interfaces 显示网络界面信息表单

-l 或–listening 显示监控中的服务器的Socket

-M 或–masquerade 显示伪装的网络连线

-n 或–numeric 直接使用IP地址,而不通过域名服务器

-N 或–netlink或–symbolic 显示网络硬件外围设备的符号连接名称

-o 或–timers 显示计时器

-p 或–programs 显示正在使用Socket的程序识别码和程序名称

-r 或–route 显示Routing Table

-s 或–statistice 显示网络工作信息统计表

-t 或–tcp 显示TCP传输协议的连线状况

-u 或–udp 显示UDP传输协议的连线状况

-v 或–verbose 显示指令执行过程

-V 或–version 显示版本信息

-w 或–raw 显示RAW传输协议的连线状况

-x 或–unix 此参数的效果和指定”-A unix”参数相同

–ip或–inet 此参数的效果和指定”-A inet”参数相同

实例:

#netstat

# netstat  - i # 显示网卡列表

# netstat  - r # 显示关于路由表的信息

# netstat  - s # 显示网络统计信息

#netstat -nt# 显示当前 T DP 连接状况

#netstat -ant# 显示 T DP 端口号的使用情况

#netstat -nr

#netstat -lpe

#netstat - an

#netstat -ntlp

# netstat -nat | grep "192.168.120.20:16067" |awk '{print $5}'|awk -F: '{print $4}'|sort|uniq -c|sort -nr|head - 1 0 # 查看连接某服务端口最多的 前10个 IP 地址

# netstat -a| awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}' # 统计机器中网络连接各个状态个数

状态说明:

LISTEN :侦听来自远方的TCP端口的连接请求

SYN-SENT :再发送连接请求后等待匹配的连接请求(如果有大量这样的状态包,检查是否中招了)

SYN-RECEIVED :再收到和发送一个连接请求后等待对方对连接请求的确认(如有大量此状态,估计被flood攻击了)

ESTABLISHED :代表一个打开的连接

FIN-WAIT-1 :等待远程TCP连接中断请求,或先前的连接中断请求的确认

FIN-WAIT-2 :从远程TCP等待连接中断请求

CLOSE-WAIT :等待从本地用户发来的连接中断请求

CLOSING :等待远程TCP对连接中断的确认

LAST-ACK :等待原来的发向远程TCP的连接中断请求的确认(不是什么好东西,此项出现,检查是否被攻击)

TIME-WAIT :等待足够的时间以确保远程TCP接收到连接中断请求的确认

CLOSED :没有任何连接状态

 

6. traceroute

功能:跟踪路由

实例:

# traceroute www.ahxh.cn

# traceroute -n  www.baidu.com # 显示IP地址,不查主机名

 

7. hostname

功能:显示主机名

实例:#hostname  www.mysqlop.com

 

8. route

功能:

(1)  显示路由表-n以数字方式显示各主机或端口等相关信息

(2)  添加路由add

(3)  删除路由del

参数:

-c  显示更多信息

-n  不解析名字

-v  显示详细的处理信息

-F  显示发送信息

-C  显示路由缓存

-f  清除所有网关入口的路由表。

-p  与 add命令一起使用时使路由具有永久性

add: 添加一条新路由。

del: 删除一条路由

-host:  主机路由

-net : 网络路由

实例:

(1)#route(显示当前系统的路由表信息)

(2)#route add –net 192.168.0.0/24deveth0

(3)#route add –host192.168.3.2deveth1

(4)#route add –host192.168.1.3gw 192.168.1.1

(5)#route add –net192.168.3.0netmask 255.255.255.0gw 192.168.3.1

(6)#route adddefaultgw192.168.0.1

(7)#route del –host 192.168.3.2. dev eth1

(8)#route del –net192.168.0.0/24dev eth0

(9)#route del defaultgw 192.168.0.1

(10) #route add -net 224.0.0.0 netmask240.0.0.0 reject# 屏蔽一条路由

(11) #route del -net 224.0.0.0 netmask240.0.0.0 reject# 删除路由记录

 

PS :添加永久路由的方法

方法一:

vi /etc/sysconfig/network-scripts/route-eth0

加入如下内容:

172.16.1.0/24 via 192.168.1.1

就算重启网络服务和服务器重启了也会生效!

方法二:

vi /etc/sysconfig/static-route

加入如下内容:

any net 172.16.1.0/24 gw 192.168.1.1

方法三:

vi /etc/rc.local

加入如下内容:

route add -net 172.16.1.0/24 gw 192.168.1.1

PS:  方法一推荐生产环境使用

方法三重启网络后不会生效,但是重启后会生效!

 

9. ip

功能:设置或查看网卡的各种属性

link:  网络接口属性

addr:  协议地址

route:  路由

add,change,show,flush,replace

实例:

link

ip -slink show

iplink set DEV {up|down}

addr

ipaddr add ADDRESS dev DEV

ipaddr del ADDRESS dev DEV

ipaddr show dev DEV to PREFIX

ipaddr flush dev DEV to PREFIX

ip addr add 192.168.100.1/24 dev eth1 labeleth1:0

ip route add to 10.0.1.0/24dev eth1 via 192.168.100.6

 

10. arp

功能:维护arp地址表

实例:

(1)#arp (显示arp地址表)

(2)#arp –s192.168.3.100:60:08:27:ce:b2(向arp地址表中添加记录)

(3)#arp –d192.168.3.1(删除arp地址表的记录)

(4)#arp-f (从/etc/ethers文件中读取添加的记录)

 

11. ss

功能: 用来获取 socket 统计信息,它可以显示和 netstat 类似的内容

命令参数:

-h, --help 帮助信息

-V, --version  程序版本信息

-n, --numeric  不解析服务名称

-r, --resolve 解析主机名

-a, --all  显示所有套接字( sockets

-l, --listening  显示监听状态的套接字( sockets

-o, --options 显示计时器信息

-e, --extended 显示详细的套接字( sockets )信息

-m, --memory 显示套接字( socket )的内存使用情况

-p, --processes  显示使用套接字( socket )的进程

-i, --info  显示  TCP 内部信息

-s, --summary  显示套接字( socket )使用概况

-4, --ipv4 仅显示 IPv4 的套接字( sockets

-6, --ipv6 仅显示 IPv6 的套接字( sockets

-0, --packet 显示  PACKET  套接字( socket

-t, --tcp  仅显示  TCP 套接字( sockets

-u, --udp  仅显示  UCP 套接字( sockets

-d, --dccp  仅显示  DCCP 套接字( sockets

-w, --raw  仅显示  RAW 套接字( sockets

-x, --unix  仅显示  Unix 套接字( sockets

-f, --family=FAMILY 显示  FAMILY 类型的套接字( sockets ), FAMILY 可选,支持 unix,inet, inet6, link, netlink

-A, --query=QUERY, --socket=QUERY

QUERY:= {all|inet|tcp|udp|raw|unix|packet|netlink}[,QUERY]

-D, --diag=FILE 将原始 TCP 套接字( sockets )信息转储到文件

-F,--filter=FILE 从文件中都去过滤器信息

FILTER:= [ state TCP-STATE ] [ EXPRESSION ]

实例:

# ss -t  - a # 显示TCP连接

# ss  - l # 列出所有打开的网络连接端口

# ss -lp | grep  80# 找出打开套接字/端口应用程序

# ss -u -a # 显示所有UDP Sockets

# ss -o stateestablished '( dport = : htt p or sport = : http  )' # 显示所有状态为Established的HTTP连接

# ss -4 state STATUE# 用TCP 状态过滤Sockets

STATUE 可以代表以下任何一个:

established

syn-sent

syn-recv

fin-wait-1

fin-wait-2

time-wait

closed

close-wait

last-ack

listen

closing

all :  所有以上状态

connected :  除了listen and closed的所有状态

synchronized : 所有已连接的状态除了syn-sent

bucket :  显示状态为maintained as minisockets,如:time-wait和syn-recv.

big :  和bucket相反.

12.启动和关闭防火墙

即时生效:

#service iptables start

#service iptables stop

重启生效:

  #service iptables on

  #service iptables off

 

其它命令还有很多:如nslookup、dig、curl、wget、scp、nc、tcpdump等......

 

:Linux网络基础总结(常用配置文件&常用命令)


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论