一、网络基础知识 

1)ip地址的分类

A类:
1-126个网络,127用于回环地址,能容纳的主机为:2^24-2个,主机位全0及其全1为网络地址和广播地址
地址范围为:1-126 
B类:
2^14个网络,每个网络中的主机数2^16-2个,地址范围为:128-191
C类:
2^21个网络,每个网络中的主机使数为2^8-2,地址范围为:192-223

2)私有地址范围

A类:
10.0.0.0/255.0.0.0 
B类:
172.16.0.0/255.255.0.0-172.31.0.0/255.255.0.0 
C类:
192.168.0.0/255.255.255.0-192.168.255.0/255.255.255.0

3)ISO/OSI七层模型

网络基本知识:
    TCP/IP(五层模型):
物理层:物理介质,用于传输电信号
链路层:MAC从设备到设备主机通信,MAC地址,IP<-->MAC (ARP/RARP),MTU:最大传输单元
网络层:IP报文,从源主机到目标主机之间通信,IP地址,IP报文
传输层:TCP/UDP,从源主机进程到目标主机特定进程之间通信,TCP/UDP
应用层:各种数据,和应用程序
   ISO/OSI:七层
物理层:物理介质,用于传输电信号
链路层:MAC从设备到设备主机通信,MAC地址,IP<-->MAC (ARP/RARP),MTU:最大传输单元
网络层:IP报文,从源主机到目标主机之间通信,IP地址,IP报文
传输层:TCP/UDP,从源主机进程到目标主机特定进程之间通信,TCP/UDP
会话层:会话信息,session
表示层:表现形式
应用层:各种数据,和应用程序交互
		
TCP:有连接协议,建立逻辑连接
   SYN, ACK, FIN, RST, PSH, URG
三次握手:
    SYN=1, ACK=0, FIN=0
    SYN=1, ACK=1, FIN=0
    SYN=0, ACK=1, FIN=0
四次断开:

二、网络配置

配置方式: 
1)静态指定
ifcfg家族:
    ifconfig:配置ip,NETMASK 
    route:配置路由
    netstat:查看状态信息
ip route2家族:
    ip OBJECT:
        ip addr:地址和掩码
        ip link:接口
        ip route:路由
    ss:状态统计工具
CentOS7:NM(network mamager)家族
    nmtui:配合主机名及其ip地址添加网卡等图像化界面
    nmcli:text window工具  
注意:
1)DNS服务器指定 
配置文件:/etc/resolv.conf  
2)主机名配置方式
hostname 
配置文件:/etc/sysconfig/network(CentOS6.x) 
CentOS7:hostnamectl,及其/etc/hostname
3)网卡配置文件
RedHat及相关发行版,ifcfg-IFNAME配置文件格式详解如下: 
/etc/sysconfig/network-scripts/ifcfg-device-name

DEVICE=IFNAME:此配置文件为设备名,要与本文中的device-name一致
BOOTPROTO={bootp|dhcp|static|none}:获取ip地址方式
HWADDR=00:11:22:22:33:44:BE:DE:66 :设备MAC地址
NM_CONTROLLED={yes|no}: 是否接受NetworkManager服务脚本来配置此设备;
ONBOOT={yes|no}: 是否在开机过程中,自动激活此接口
TYPE={Ethernet|Bridge}: 网络接口类型
UUID=   :本机的UUID
IPADDR= :IP地址
NETMASK=:子网掩码
GATEWAY=:网关
DNS1=   :域名解析
DNS2=   :域名解析
IPV6INIT={yes|no}
USERCTL={yes|no}: 是否允许普通用控制此接口
PEERDNS={yes|no}: 不接受DHCP服务器指派的DNS服务器地址	

4)route命令:路由查看及管理
 查看路由条目:route -n 
 添加:route add [-net|-host] target [netmask Nm] [gw Gw] [dev] [if]
 删除:route del -net 
实例:route add -net 10.0.0.0/8 gw 192.168.0.1
     route del -net 10.0.0.0/8

netstat命令:

netstat命令: 
    netstat  -  Print  network  connections,  routing  tables,  interface statistics, masquerade connections, and multicast memberships
    选项:
        -r:显示内核路由表
        -n:数字格式
        -a:显示所有
        -t:tcp相关连接
        -u:udp相关连接
        -l:listen监听状态的连接
        -e:扩展格式 
        -p:显示相关进程的pid
netstat命令常用组合:
-tan -uan -tnl -unl -tunpl 
显示网络连接: 
   netstat [-tcp] [-t] [-udp|-u]
传输层协议:
   tcp:面向连接,三次握手
   udp:非面向连接,直接发送数据报文 
显示接口的统计数据:
所有接口:
netstat -i 
netstat -ieth0
指定接口:
netstat -I
ifup/ifdown命令:
注意:通过配置文件/etc/sysconfig/nework-scripts/ifcfg-IFACE来识别接口完成配置
hostname命令:
查看:hostname 
配置:hostname HOSTNAME 
hostnamectl命令:
hostnamectl status:显示主机名信息 
hostnamectl set-hostname:设定主机名,永久有效

配置DNS服务指向及其测试

1)配置文件:/etc/resolv.conf 
    nameserver DNS_SERVER_IP 
    namesever 8.8.8.8  
2)如何测试
dig -t A 域名 (把域名解析成ip)

dig -x ip (把ip解析成域名)

本文转自chengong1013 51CTO博客,原文链接:http://blog.51cto.com/purify/1839349,如需转载请自行联系原作者