一、计算机网络
1.计算机网络定义
计算机网络:是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。
2.主要网络
(1)局域网
通常我们常见的“LAN”就是指局域网,这是我们最常见、应用最广的一种网络。所谓局域网,那就是在局部地区范围内的网络,它所覆盖的地区范围较小。局域网在计算机数量配置上没有太多的限制,少的可以只有两台,多的可达几百台。一般来说在企业局域网中,工作站的数量在几十到两百台次左右。在网络所涉及的地理距离上一般来说可以是几米至10公里以内。局域网一般位于一个建筑物或一个单位内,不存在寻径问题,不包括网络层的应用。
(2)城域网
这种网络一般来说是在一个城市,但不在同一地理小区范围内的计算机互联。这种网络的连接距离可以在10 ̄100公里,它采用的是IEEE802.6标准。MAN与LAN相比扩展的距离更长,连接的计算机数量更多,在地理范围上可以说是LAN网络的延伸。在一个大型城市或都市地区,一个MAN网络通常连接着多个LAN网。如连接政府机构的LAN、医院的LAN、电信的LAN、公司企业的LAN等等。由于光纤连接的引入,使MAN中高速的LAN互连成为可能。
(3)广域网
这种网络也称为远程网,所覆盖的范围比城域网(MAN)更广,它一般是在不同城市之间的LAN或者MAN网络互联,地理范围可从几百公里到几千公里。因为距离较远,信息衰减比较严重,所以这种网络一般是要租用专线,通过IMP(接口信息处理)协议和线路连接起来,构成网状结构,解决循径问题。这种城域网因为所连接的用户多,总出口带宽有限,所以用户的终端连接速率一般较低,通常为9.6Kbps ̄45Mbps 如:邮电部的CHINANET,CHINAPAC,和CHINADDN网。
(4)无线网
随着笔记本电脑和个人数字助理等便携式计算机的日益普及和发展,人们经常要在路途中接听电话、发送传真和电子邮件阅读网上信息以及登录到远程机器等。然而在汽车或飞机上是不可能通过有线介质与单位的网络相连接的,这时候可能会对无线网感兴趣了。虽然无线网与移动通信经常是联系在一起的,但这两个概念并不完全相同。通过无线网连接起来的计算机的位置可能又是固定不变的,如在不便于通过有线电缆连接的大楼之间就可以通过无线网将两栋大楼内的计算机连接在一起。
3.OSI与TCP/IP参考模型
OSI七层参考模型
TCP/IP模型
4.IP地址分类
A类地址:
0000 0000-0111 1111 0-127
网络数:126
主机数:2^24-2
私有地址:10.0.0.0/255.0.0.0
B类地址:1000 0000-1011 1111 128-191
网络数:2^14
主机数:2^16-2
私有地址:172.16.0.0/16-172.31.0.0/16
C类地址:1100 0000-1101 1111 192-223
网络数:2^21
主机数:2^8-2
私有地址:192.168.0.0/24-192.168.255.0/24
D类地址:1110 0000-1110 1111 224-239
E类地址:1111 0000-1111 1111 240-255
二、配置网络接口
1.路由的分类
主机路由:到达非本网络的主机;
网络路由:到达非本网络之外的网络;
默认路由:到达非本网络之外的网络或主机。
2.接入网络需要的条件
(1)IP地址和子网掩码
(2)默认网关:通信需要经过的路由
(3)DNS服务器地址:包括主DNS服务器,次DNS服务器和第三DNS服务器
(4)主机名
3.配置方式
配置IP和路由分为两种方式:静态指定和动态分配
(1)静态指定:
ifcfg类命令:ifconfig、route、netstat
ip命令:子命令link,addr,route等,ss,tc
编辑配置文件:图形化前端工具(system-config-network-tui、setup)
(2)动态分配:DHCP
4.配置网络接口
(1)网络接口命名方式
CentOS 5/6:eth(0,1,2,3...)以MAC地址命名方式命名;
CentOS 7:以总线上对应的PCI适配器对应的插槽命名;
(2)ifcfg类配置命令
ifconfig:网络属性信息显示和配置
ifconfig interface IP/mask [up|down]
常用选项:
-a:显示所有网络接口信息
[-]promisc:启用混杂模式(接受目标非本机的数据包)
[root@www ~]# ifconfig eth0 Link encap:Ethernet HWaddr 00:0C:29:91:63:EC inet addr:192.168.1.112 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe91:63ec/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:139756 errors:0 dropped:0 overruns:0 frame:0 TX packets:1629 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:15048258 (14.3 MiB) TX bytes:188953 (184.5 KiB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:10 errors:0 dropped:0 overruns:0 frame:0 TX packets:10 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:500 (500.0 b) TX bytes:500 (500.0 b) |
route:配置路由信息
常用选项:
-n:查看路由信息
[root@www ~]# route -n 查看路由信息 Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.1.0 0.0.0.0 255.255.255.0 U 1 0 0 eth0 0.0.0.0 192.168.1.253 0.0.0.0 UG 0 0 0 eth0 |
添加路由信息:route add [-net|-host] target [netmask Nm] [gw Gw] [[dev] If]
[root@www ~]# route add -host 172.16.0.1 gw 192.168.1.253 添加主机路由 [root@www ~]# route add -net 172.16.0.0/16 gw 192.168.1.253 dev eth0 添加网络路由 [root@www ~]# route add default gw 192.168.1.253 dev eth0 添加默认路由 [root@www ~]# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 172.16.0.1 192.168.1.253 255.255.255.255 UGH 0 0 0 eth0 192.168.1.0 0.0.0.0 255.255.255.0 U 1 0 0 eth0 172.16.0.0 192.168.1.253 255.255.0.0 UG 0 0 0 eth0 0.0.0.0 192.168.1.253 0.0.0.0 UG 0 0 0 eth0 |
删除路由信息:route del [-net|-host] target [gw Gw] [netmask Nm] [dev If]
[root@www ~]# route del -host 172.16.0.1 删除主机路由 [root@www ~]# route del -net 172.16.0.0 netmask 255.255.0.0 删除网络路由 [root@www ~]# route del default 删除默认路由 |
netstat:查看网络状态信息
①显示网络连接:
netstat [--tcp|-t] [--udp|-u] [--raw|-w] [--listening|-l] [--all|-a] [--numeric|-n] [--extend|-e[--extend|-e]] [--program|-p]
常用选项:
-t: tcp协议相关
-u: udp协议相关
-w: raw socket相关
-l: 处于监听状态
-a: 所有状态
-n: 以数字显示IP和端口;
-e:扩展格式
-p: 显示相关进程及PID
常用组合:
-tan, -uan, -tnl, -unl
[root@www ~]# netstat -tan 显示tcp所有状态连接 Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:57821 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN tcp 0 0 192.168.1.111:22 192.168.1.103:58816 ESTABLISHED tcp 0 0 192.168.1.111:22 192.168.1.103:49246 ESTABLISHED tcp 0 52 192.168.1.112:22 192.168.1.103:50497 ESTABLISHED tcp 0 0 :::22 :::* LISTEN tcp 0 0 ::1:631 :::* LISTEN tcp 0 0 ::1:25 :::* LISTEN tcp 0 0 :::37800 :::* LISTEN tcp 0 0 :::111 :::* LISTEN |
②显示路由表
netstat {--route|-r} [--numeric|-n]
-r: 显示内核路由表
-n: 数字格式
[root@www ~]# netstat -rn Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 0.0.0.0 192.168.1.253 0.0.0.0 UG 0 0 0 eth0 |
③显示接口统计数据
netstat {--interfaces|-I|-i} [iface] [--all|-a] [--extend|-e] [--program|-p] [--numeric|-n]
[root@www ~]# netstat -i Kernel Interface table Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg eth0 1500 0 142144 0 0 0 2795 0 0 0 BMRU lo 65536 0 10 0 0 0 10 0 0 0 LRU |
(3)配置DNS
编辑配置文件:/etc/resolv.conf
nameserver DNS_SERVER_IP1
nameserver DNS_SERVER_IP2
nameserver DNS_SERVER_IP3
正解:FQDN-->IP
# dig -t A FQDN
# host -t A FQDN
反解:IP-->FQDN
# dig -x IP
# host -t PTR IP
[root@www ~]# cat /etc/resolv.conf # Generated by NetworkManager nameserver 192.168.1.253 DNS地址 [root@www ~]# dig -t A www.baidu.com 正解测试 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.el6 <<>> -t A www.baidu.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 5085 ;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: 问题 ;www.baidu.com.INA ;; ANSWER SECTION: 答案 www.baidu.com.1092INCNAMEwww.a.shifen.com. www.a.shifen.com.290INA220.181.112.244 www.a.shifen.com.290INA220.181.111.188 ;; Query time: 33 msec ;; SERVER: 192.168.1.253#53(192.168.1.253) ;; WHEN: Fri Sep 4 13:25:21 2015 ;; MSG SIZE rcvd: 90 [root@www ~]# dig -x 192.168.1.253 反解测试 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.el6 <<>> -x 192.168.1.253 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 38008 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;253.1.168.192.in-addr.arpa.INPTR ;; ANSWER SECTION: 253.1.168.192.in-addr.arpa. 86400 INPTRbogon. ;; Query time: 46 msec ;; SERVER: 192.168.1.253#53(192.168.1.253) ;; WHEN: Fri Sep 4 13:26:03 2015 ;; MSG SIZE rcvd: 63 |
(4)IP命令
ip:显示或配置路由、设备、策略路由和隧道信息
ip [ OPTIONS ] OBJECT { COMMAND | help }
OBJECT := { link | addr | route }
①ip link
ip link show:显示当前网络接口对应的二层描述信息
ip link show dev If:显示对应设备状态信息
ip link show up:显示已激活的接口
<BROADCAST,MULTICAST,UP,LOWER_UP>:启用的状态
mtu:最大协议传输单元
[root@www ~]# ip link show 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:91:63:ec brd ff:ff:ff:ff:ff:ff 3: pan0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN link/ether 32:48:f2:78:00:34 brd ff:ff:ff:ff:ff:ff |
ip link set:修改设备属性
ip link set dev If [up|down]:启用或禁用接口
[root@www ~]# ip link set dev eth0 down [root@www ~]# ip link show1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000 link/ether 00:0c:29:91:63:ec brd ff:ff:ff:ff:ff:ff |
②ip addr:协议地址管理工具
ip addr { add | del } IFADDR dev STRING
[label LABEL]:添加地址时指明网卡别名
[scope {global|link|host}]:指明作用域
global: 全局可用;
link: 仅链接可用;
host: 本机可用;
[broadcast ADDRESS]:指明广播地址
ip address show - look at protocol addresses
[dev DEVICE]
[label PATTERN]
[primary and secondary]
ip address flush - flush protocol addresses
使用格式同show
[root@www ~]# ip addr add 192.168.1.113 dev eth0 [root@www ~]# ip addr show dev eth0 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:91:63:ec brd ff:ff:ff:ff:ff:ff inet 192.168.1.112/24 brd 192.168.1.255 scope global eth0 inet 192.168.1.113/32 scope global eth0 inet6 fe80::20c:29ff:fe91:63ec/64 scope link valid_lft forever preferred_lft forever |
③ip route:路由表管理工具
ip route add:添加路由
ip route add TARGET via GW dev IFACE src SOURCE_IP
TARGET:
主机路由:IP
网络路由:NETWORK/MASK
添加网关:ip route add defalt via GW dev IFACE
ip route delete:删除路由
ip route del TARGET
ip route show:查看路由
ip route flush
[dev IFACE]
[via PREFIX]
[root@www ~]# ip route add 172.16.0.1 via 192.168.1.253 dev eth0 [root@www ~]# ip route show 172.16.0.1 via 192.168.1.253 dev eth0 192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.112 metric 1 default via 192.168.1.253 dev eth0 proto static |