network device - yaokun123/php-wiki GitHub Wiki
双绞线 8根 4对 100米 10M/100M(4)/1000M(8)。
线序 直通线(不同类型设备) 交叉线(同类设备)。
mac 物理地址 硬件地址 不能更改(可以通过修改注册表不使用mac地址上网)。使计算机连网的网络设备。
不安全(给目标mac地址的数据包其他物理机也能收到) 带宽共享 冲突域(同一时刻只有两台物理机可以通信) 半双工。
当两个HUB相连接的时候形成了一个大的冲突域
为了优化集线器(集线器相连形成大的冲突域)出现网桥设备
根据数据包中的地址自动学习获取mac地址形成mac地址表
HUB-----网桥-----HUB
隔绝了冲突域。后来网桥连接的HUB越来越多,网桥就不再连接HUB,而是直接连接计算机,就形成了交换机。
交换机就是多口的网桥。
安全(给目标mac地址的数据包其他物理机收不到) 带宽独享 全双工 学习mac地址 交换机的接口有缓存数据包的能力
1、交换机的几种模式(路由器也适用)
1、用户模式
默认情况下,第一次访问交换机用户进入的就是用户模式,在此模式下只能进行很有限的操作,如只能用来查看一些统计信息。
Switch>
2、特权模式
在特权模式下,有检查、配置、调试等所有权限,除了具体到端口的配置,其他的基本都可以在此模式下完成。使用enable命令进入特权模式
Switch>enable
Switch#
3、全局配置模式
该配置模式下配置的内容都将作用于全局。使用configure terminal 命令进入全局配置模式
Switch#configure terminal
Switch(config)#
4、接口模式
作用于具体某一子接口,需要配置具体的内容就需要进入相应的子配置模式。
如需要配置g0/1的端口,则输入在全局配置模式下输入interface g0/1,进入(config-if)#。
E 10M/F 100M/G 1000M/T 10000M
Switch(config)#interface fastEthernet 0/1 // 设置0/1接口
Switch(config-if)#
5、console模式
Switch(config)#line console 0
Switch(config-line)#
2、交换机的几个命令(路由器也适用)
exit:可以返回上一层的模式
end:快速回到特权模式
Switch# show mac-address-table // 特权模式下查看mac地址表
Switch# reload // 特权模式下,重启 。配置之后不保存断电或重启配置就没了
Switch# copy running-config startup-config // 特权模式下,保存配置。running-config是内存中的文件,startup-config是磁盘中的文件
Switch# write // 特权模式下,保存配置。另一种写法
Switch# show running-config // 特权模式下,查看配置
Switch# erase startup-config // 特权模式下,清空配置
Switch# show ip interface brief // 特权模式下,查看接口简要信息
// 大部分查看的命令都需要在特权模式下执行。不在特权模式下也可以使用,在命令前加上do即可。
// 删除配置,命令前加no
// 设置密码,明文enable password。秘文enable secret 。
Switch(config)#hostname demo_11_22 // 在全局模式下可以修改主机名称
3、交换机的隐藏pc,为交换机配置管理ip // 普通交换机属于2层设备,无法配置ip(3层)信息,但是交换机里有隐藏的虚拟pc可以配置ip。
Switch(config)#interface vlan 1 // 进入虚拟
Switch(config-if)#ip address 10.1.1.253 255.255.255.0 // 配置ip和掩码
Switch(config)#ip default-gateway 10.1.1.254 // 为交换机配置默认的网关
4、交换机端口安全-控制连接计算机数量
Switch(config-if)#switchport mode access // access表示是接计算机的
Switch(config-if)#switchport port-security // 添加安全
Switch(config-if)#switchport port-security violation shutdown // 如果违反安全策略就关掉接口
Switch(config-if)#switchport port-security maximum 2 // 设置最多连接数量
//交换机打开违反安全策略的接口先shutdown再no shutdown
Switch(config-if)#shutdown
Switch(config-if)#no shutdown
// 交换机端口安全-绑定mac地址
Switch(config)#interface range fastEthernet 0/1 - 24 // 针对交换机的0-24个口
Switch(config-if-range)#switchport mode access // access表示是接计算机的
Switch(config-if-range)#switchport port-security // 添加安全
Switch(config-if-range)#switchport port-security violation shutdown // 如果违反安全策略就关掉接口
Switch(config-if-range)#switchport port-security mac-address sticky // 把路由器的mac地址改为静态的,以后不要再学习了
5、划分VLAN
VLAN是交换机组网才有意义。按照部门或管理的要求来创建局域网,而不是按位置划分网段。更灵活,安全。一个VLAN = 一个广播域 = 一个网段(子网)。
Switch#show vlan // 查看vlan
Switch#config terminal
Switch(config)#vlan 2 // 创建vlan2
Switch(config)#interface range fastEthernet 0/13 - 24
Switch(config-if-range)#switchport mode access
Switch(config-if-range)#switchport access vlan 2 // 将13-24接口放到vlan2中
Switch(config)#interface gigabitEthernet 0/1
[Switch(config-if)#switchport trunk encapsulation dot1q] // 设置干道链路标准
Switch(config-if)#switchport mode trunk // 设置干道链路
// 在三层交换机上的配置
Switch(config)#ip routing // 让三层交换机启动路由功能
Switch(config)#interface gigabitEthernet 0/1
Switch(config-if)#switchport trunk encapsulation dot1q // 设置干道链路标准
Switch(config-if)#switchport mode trunk // 设置干道链路
Switch(config)#vlan 2 // 在路由器上创建vlan2
Switch(config-vlan)#exit
Switch(config)#interface vlan 1
Switch(config-if)#no shutdown
Switch(config-if)#ip address 192.168.0.1 255.255.255.0 // 给vlan1配置ip地址
Switch(config-if)#exit
Switch(config)#interface vlan 2
Switch(config-if)#no shutdown
Switch(config-if)#ip address 192.168.1.1 255.255.255.0 // 给vlan12配置ip地址
Switch#show interface vlan 1
Switch#show interface vlan 2
6、VLAN间干道协议-VTP协议
switch>enable
switch#config t
switch(config)#vtp domain todd
switch(config)#vtp password aaa
switch(config)#vtp mode client
switch(config)#vtp mode server//服务端
负责在不同网段之间转发数据。一般有广域网接口,隔绝广播(目标mac地址全1)。接口不多,每个口对应一个网段
1、连接到路由器的方法
1、通过console配置路由器
//第一次配置路由器时候使用console线把路由器跟电脑相连接
2、Hyper Terminal
3、WEB
//Route1(config)#ip http server
//访问http://路由器的ip地址
4、TELNET
//第一次是不能使用的,当网络配置好之后,路由器设置允许telnet即可。
//配置路由器允许telnet
Route1(config)#line vty 0 ?
Route1(config)#line vty 0 15
Route1(config-line)#password aaa // 配置密码
Route1(config-line)#transport input telnet // 默认就是telnet,写不写都行
Route1(config-line)#login // telnet的时候必须输入密码
// telnet 路由器的ip地址 之后输入密码即可登录上
或
Route1(config)#line vty 0 ?
Route1(config)#line vty 0 15
Route1(config-line)#login local
Route1(config-line)#exit
Route1(config)#username xxx password xxx // 配置账号密码
2、配置路由器进行域名解析
Route1(config)#ip host R2 192.168.0.2 // 以后可以直接ping R2
Route1(config)#ip domain-lookup
Route1(config)#ip name-server 8.8.8.8
//为路由器配置ip地址和子掩网码(快速以太网接口 和 广域网接口)
Route>enable // 进入路由器配置的特权模式
Route#config terminal // 配置终端
Route(config)#interface fastEthernet 0/0 // 配置快速以太网接口0/0
Route(config-if)#no shutdown // 打开快速以太网接口0/0
Route(config-if)#ip address 10.0.0.1 255.0.0.0 // 为快速以太网接口0/0配置ip地址和子掩网码
Route(config-if)#exit // 退出快速以太网接口0/0的配置
Route(config)#interface serial 2/0 // 配置广域网接口2/0
Route(config-if)#no shutdown // 打开广域网接口2/0
Route(config-if)#clock rate 64000 // 为广域网接口2/0配置时钟频率64k,只需要配置一端即可
Route(config-if)#ip address 11.0.0.1 255.0.0.0 // 为广域网接口2/0配置ip地址和子掩网码
3、动态路由
1、RIP协议:用跳数判断,周期性的更新路由表(30秒广播路由表),最大跳数16跳
Route1(config)#router rip // 配置路由器使用rip协议
Route1(config-router)#network 192.168.80.0 // 配置路由器那个接口参与rip协议
Route1(config-router)#network 192.168.90.0 // 路由器直连的几个网段
Route1#show ip protocols // 查看动态路由配置情况
2、EIGRP协议:用速度判断
//Route1(config)#router eigrp 10
//Route1(config-router)#network 192.168.80.0 //配置路由器那个接口参与rip协议
//Route1(config-router)#network 192.168.90.0
一个路由器可以运行多个路由协议,但是EIGRP协议的优先级更高。
4、静态路由
//配置路由器的静态路由表,让路由器知道去目标网段怎么走
Route>enable // 进入路由器配置的特权模式
Route#show ip route // 查看路由器的路由表
Route#config terminal // 配置终端
Route(config)#ip route 12.0.0.0(目标网段) 255.255.0.0(目标网段的子掩网码) 11.0.0.2(去目标网段下一跳给谁) // 设置静态路由
Route(config)#no ip route 12.0.0.0(目标网段) 255.255.0.0(目标网段的子掩网码) // 删除一个静态路由
5、ACL (路由器的访问控制列表) ACL主要分为2大类:1,标准ACL、2,扩展ACL
- 1、ACL表必须应用到接口的进或出方向才生效。
- 2、一个接口的一个方向只能应用一张表。
- 3、进还是出方向应用?取决于流量控制总方向。
- 4、ACL表是严格自上而下检查每一条,所以要注意书写顺序。
- 5、每一条是由条件和动作组成,当流量完全满足条件当某流量没有满足某条件,则继续检查下一条。
- 6、标准ACL尽量写在靠近目标的地方
- 7、一般情况下,标准或扩展ACL一旦编写好,无法修改某一条,也无法删除某一条,也无法修改顺序,也无法往中间插入新的条目,只能一直在最后添加新的条目。(可通过命名ACL解决)
1、标准的ACL
// 表号:1-99
// 特点:只能基于源ip对包进行过滤
// 格式:access-list 表号 permit/deny 源IP或源网段 反子掩网码
//在路由器上设置ACL访问控制规则
Router#show access-list[表ID] // 查看ACL控制表
Router#config t
Router(config)#access-list ?
<1-99> IP standard access list // 标准的ACL
<100-199> IP extended access list // 扩展的ACL
Router(config)#access-list 10 deny host 192.168.2.2 // 单独拒绝主机ip为192.168.2.2,应该把单独的放在最先设置
Router(config)#access-list 10 permit 192.168.1.0 0.0.0.255 // 允许源地址192.168.1.0网段通过,其他的都拒绝
Router(config)#access-list 10 permit 192.168.2.0 0.0.0.255 // 0.0.0.255为255.255.255.0的反码
Router(config)#no access-list 10 // 删除编号10的ACL
Router(config)#interface fastEthernet 0/1 // 将ACL应用到接口,将以上配置的规则应用于某一接口
Router(config-if)#ip access-group 10 in // ip access-group 表号 in/out
Router(config)#access-list 20 deny 192.168.1.0 0.0.0.255 // 拒绝一个,同意其他
Router(config)#access-list 20 permit any
2、扩展的ACL
// 表号:100-199
// 特点:可以基于源IP 目标IP 协议 端口号 等对包进行过滤
//允许192.168.2.0网段访问互联网任意地址
Router(config)#access-list 100 permit ip 192.168.2.0 0.0.0.255 any
//允许192.168.2.0网段访问互联网的10.0.0.0的80端口
Router(config)>access-list 100 permit tcp 192.168.2.0 0.0.0.255 10.0.0.0 0.255.255.255 eq 80
//允许192.168.0.0网段ping互联网
Router(config)>access-list 100 permit icmp 192.168.0.0 0.0.0.255 any
3、命名ACL
作用:可以对标准或扩展ACL进行自定义命名
优点:自定义命名更容易辨认,也便于记忆!可以任意修改某一条,或删除某一条,也可以往中间插入某一条。
Router(config)#ip access-list standard/extended demo(自定义表名)
Router(config-ext-nacl)#
Router(config-ext-nacl)#no 条目ID // 删除某一条
Router(config-ext-nacl)#条目ID 动作 条件 // 插入某一条
4、使用ACL控制列表保护路由器安全
// 只允许一个地址telnet路由器
//Route1(config)#line vty 0 15
//Route1(config-line)#password aaa // 配置密码
//Route1(config-line)#login // telnet的时候必须输入密码
//Route1(config-line)#exit
//Route1(config)#access-list 10 permit host 192.168.1.3
或
//Route1(config)#access-list 10 permit 192.168.1.3 0.0.0.0 // 配置只允许192.168.1.3主机
//Route1(config)#line vty 0 15
//Route1(config)#access-class 10 in // 将ACL绑定到telnet接口
6、在三层路由器上部署DHCP服务
Router#configure terminal
Router(config)#ip dhcp excluded-address 10.1.1.1 10.1.1.99 // 排除两个ip
Router(config)#ip dhcp pool v10 // 创建一个地址池
Router(dhcp-config)#network 10.1.1.0 255.255.255.0 // 配置网段和子掩网码
Router(dhcp-config)#default-router 10.1.1.254 // 配置默认网关
Router(dhcp-config)#dns-server 8.8.8.8 // 配置dns
// 将与交换机相连的端口配置上ip
Router#configure terminal
Router(config)#interface G 0/0/0
Route(config-if)#ip address 10.1.1.254 255.255.255.0
// 删除配置
Router(config)#no ip dhcp excluded-address 10.1.1.1 10.1.1.99
Router(config)#no ip dhcp pool v10
7、HSRP热备份路由协议
R1:
Router(config)#interface gigabitEthernet 0/0/0 // 进入端口,内网端口
Router(config-if)#standby 1 ip 192.168.1.254 // 配置HSRP,组号为1,虚拟ip为192.168.1.254(作为虚拟网关使用)
Router(config-if)#standby 1 priority 200 // 设置优先级为200,0-255,越大优先级越高,默认100
Router(config-if)#standby 1 preempt // 开启抢占功能
Router(config-if)#standby 1 track gigabitEthernet 0/0/1 // 开启追踪外网端口
R2:
Router(config)#interface gigabitEthernet 0/0/0
Router(config-if)#standby 1 ip 192.168.1.254
Router(config-if)#standby 1 priority 190
Router(config-if)#standby 1 preempt
Router#show standby brief // 查看热备份详细信息
Router#show standby
8、NAT/PAT 地址转化技术
// NAT路由器上绑定多个公网地址,然后用一个公网地址替换一个内网地址,不节省公网IP
// PAT 也叫端口地址转换,路由器上只绑定一个公网地址,然后用一个公网地址替换所有内网地址节省公网IP,替换原端口和原地址
// 1、静态NAT
10.0.0.2|131.107.0.2
10.0.0.3|131.107.0.3
10.0.0.4|131.107.0.4
10.0.0.5|131.107.0.5
10.0.0.6|131.107.0.6
PC访问server2 源地址被替换
数据|10.0.0.2|202.99.160.2| => 数据|131.107.0.2|202.99.160.2|
10.0.0.2|202.99.160.2|数据| <= 131.107.0.2|202.99.160.2|数据|
目标地址被替换 server2返回的数据包
// 2、动态NAT
10.0.0.2|131.107.0.2
10.0.0.3|131.107.0.3
10.0.0.4|131.107.0.4
10.0.0.5|
10.0.0.6|
多出来的内网IP上不了网
// 3、PAT
Router#debug ip packet //开启IP数据包转发显示
Router(config)#access-list 10 permit 10.0.0.0 0.0.0.255 // 定义内网哪些网段将来用于转换
Router(config)#ip nat pool todd 131.107.0.1 131.107.0.1 netmask 255.255.255.0 // 定义公网地址池,todd是一个随便给的一个名字
Router(config)#ip nat inside source list 10 poll todd overload // 将公网地址与内网地址绑定-overload代表pat,如果没有overload就代表是NAT
// 设置路由器的端口,告诉路由器哪个是内网,哪个是外网
Router(config)#interface serial 1/0
Router(config-if)#ip nat outside // 定义外网端口
Router(config)#interface fastEthernet 0/0
Router(config-if)#ip nat inside // 定义内网端口
// 4、端口映射,端口映射 允许你使用公网地址访问内网服务器
Router(config)#ip nat inside source static tcp 10.0.0.6 80 131.107.0.1 80 // 将公网的80端口映射到内网的80端口