一,网络通信的简介

通信的三要素是:ip地址,掩码,路由。 ip和netmask是必须有的,有了这两个条件,可以实现本地网络通信。 如果有ip,netmask,route,就可以实现跨网段通信。 还有一个点就是DNS,域名解析。

二,linux网络配置

linux配置网络的方式很多,以下我从四个方向介绍网络的配置方式。从简单到难。 1,图形界面方式 2,伪图形界面方式 3,命令行方式 4,配置文件方式 可以根据自己的喜好来配置网络,我个人还是比较喜欢命令行方式配置网络。 1.图形界面(只能在init 5 下使用) 系统命令: ]# nm-connection-editor 双击要修改的网络eth0网卡 需要修改:方法----地址 方法:选择手动 地址:修改地址,子网掩码,网关,以及DNS服务器 保存即可。

2.伪图形界面(init 3 和 5模式可以使用) 系统命令: ]# nmtui 回车进入 选项需要修改的网卡进入

配置和图形界面类似。 注:选择是用下上左右选择,回车是确定

3.命令行配置(redhat 7.2) ]# nmcli connection modify eth0 ipv4.method manual ipv4.addresses "192.168.4.52/24" ipv4.gateway "192.168.4.254" ipv4.dns "8.8.8.8" connection.autoconnect yes ]# nmcli connection up eth0 翻译:#网络连接命令 ---连接----修改---网卡名---ip版本4.方法-- 手动--ip版本4.地址 ----“ip地址/掩码"--ip版本4.网关--"网关地址"--ip版本4.域名解析 “DNS服务器” ---连接.自动连接---是 #网络连接命令--连接---开启---网卡名 (英文好的,可以直接顺下来) ]# nmcli con mo eth0 ipv4.method manual ipv4.add "192.168.4.52/24" 使用时间长了,命令可以简写。 心得: 其实许多的linux命令都是英文单词的缩写,如果英文好,学习起来还是容易些。

4.配置文件 网络的配置文件:/etc/sysconfig/network-scripts/ifcfg-网卡名 ]# vim /etc/sysconfig/network-scripts/ifcfg-eth0 TYPE=Ethernet //接口类型,常见的有Ethernet, Bridge BOOTPROTO=none //激活此接口时使用什么协议来配置接口属性,常用的有dhcp、bootp、static、none DEFROUTE=yes
IPV4_FAILURE_FATAL=no IPV6INIT=yes //是否初始化IPv6 IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_FAILURE_FATAL=no NAME=eth0 DEVICE=eth0 //网卡名 ONBOOT=yes //系统引导过程,是否激活此接口 UUID=5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03 //设备的惟一标识 IPADDR=192.168.4.52 //网络地址 NETMASK=255.255.255.0 //掩码 (PREFIX=24 //掩码) GATEWAY=192.168.4.254 //网关 IPV6_PEERDNS=yes IPV6_PEERROUTES=yes DNS配置文件 ]# vim /etc/resolv.conf nameserver 8.8.8.8 //DNS服务器 8.8.8.8是谷歌的dns服务器 禁用网卡:ifdown eth0 开启网卡:ifup eth0

三,网络的管理

网络管理的内容挺多,一般都是用一些工具来管理网络。 firewall,selinux都会对网络服务有一定的限制,本文暂时不讨论。 ifconfig 命令:配置查看网络接口 可以跟网卡名,查看某个网卡的信息

route命令:路由查看及管理 ]# route -n -n: 表示以数字形式显示信息,不反向解析地址和端口号

netstat命令:查看网络状态及统计数据 我使用一般是:netstat -anptu | grep 要查询的内容(http/80,mysql/3306等) -t,–tcp:TCP协议的相关连接,连接均有其状态;FSM(Finate State Machine); 通信开始之前,要建立一个虚链路;通信完成后还要拆除链接 -u,–udp:UDP相关的连接;无连接的协议;直接发送数据报文 -w:raw socket裸套接字相关的连接 -l:处于监听状态的连接 -a:所有状态的连接 -n:以数字格式显示IP和Port; -e:扩展格式 -p:显示相关的进程及PID;

ss命令:和netstat命令类似,但是查询速度比netstat快。

参考网络资源:(更详细) https://www.cnblogs.com/liangshaoye/p/5464601.html

共勉:I hear and I forget. I see and I remember. I do and I understand!