当前位置: 首页 > article >正文

路由器与防火墙配置命令

路由器与防火墙配置命令

小明啊,你不是学计算机的嘛,叔叔家的路由器坏了,可以过来帮叔叔看看吗

命令可以用缩写,造就一堆容易造成歧义的缩写,比如addaddress的缩写,shshutdown的缩写。

默认为Cisco路由器和Cisco防火墙

视图模式介绍

普通视图 router>
特权视图 router#     #在普通模式下输入enable
全局视图 router(config)#   #在特权模式下输入config t
接口视图 router(config-if)#   #在全局模式下输入int 接口名称 例如int f0/0或int e0
路由协议视图 router(config-route)#  #在全局模式下输入router 动态路由协议名称
exit #从接口、协议、line等视图模式下退回到全局配置模式,或从全局配置模式退回到特权模式
end #回到特权模式
router#reload #重新启动路由器

1. 基本配置

router>en	 					#enable的缩写,进入特权模式
router#conf t 					#configure terminal的缩写,进入全局配置模式
router(config)# hostname xxx 	#设置设备名称
router(config)#enable password XXX  #设置进入特权模式密码(低级密码,密码可逆)
Router(config)#enable secret XXX    #设置进入特权模式密码(高级密码,密码不可逆)router(config)#no ip domain lookup #不允许路由器缺省使用DNS解析命令
router(config)# Service password-encrypt #对所有在路由器上输入的口令进行暗文加密
router(config)#securityrouter(config)#line vty 0 4 #进入虚拟终端线路配置模式
router(config-line)#password xxx #设置telnet的密码。没有密码远程连接不了
router(config-line)#login #开启登陆密码router(config)#line con 0 #进入控制口的服务模式
router(config-line)#password xxx #设置console的密码
router(config-line)#login #开启密码router#Logout  #退出当前路由器登陆模式相对与windows的注销
router#reload #重新启动路由器(热启动)冷启动就是关闭路由器再打开电源开关 

2. 接口配置与网络地址转换

NAT:network address translation,网络地址转换

PAT:port address translation,端口地址转换

router(config)#int s0 #进入接口配置模式。serial 0端口配置(如果是模块化的路由器前面加上槽位编号,#例如serial0/0 代表这个路由器的0槽位上的第一个接口)
router(config-if)#ip add 10.9.9.1 255.255.255.0   #这里的add是address的缩写,设置s0接口的ip地址,子网掩码
router(config-if)#nameif outside#设置接口命名为outside
router(config-if)# security-level 0#设置接口的安全级别为0
router(config-if)#enca hdlc/ppp #捆绑链路协议 hdlc 或者 ppp。#思科缺省串口封装的链路层协议是HDLC,所以在show run中不会显示enca hdlc#如果要封装为别的链路层协议例如PPP/FR/X25,show run才会显示enca ppp等配置firewall(config)# int e0 #进入e0接口配置
firewall(config-if)# ip add 10.9.9.1 255.255.255.0 #设置e0接口的ip,netmask
firewall(config-if)# nameif inside #接口命名为inside,表示内部网络
firewall(config-if)# end #回到特权模式
firewall# conf t #进入全局模式
firewall(config)# nat (inside) 101 10.9.9.0 255.255.255.0#配置inside接口的网络地址转换,指定转换范围10.9.9.0/24网段的数据包#穿越防火墙时将进行地址转换,NAT标识ID为101
firewall(config)# global (outside) 101 192.168.9.9-192.168.9.102 netmask 255.255.255.0#配置outside接口的全局地址池,转换NAT标识ID为101的所有数据包源IP地址#(需要与nat命令的NAT标识对应),分配出站的全局地址,范围192.168.9.9-192.168.9.102。#比如来自内网10.9.9.2的数据包转换成192.168.9.9作为外部地址。
firewall(config)# global (outside) 101 192.168.9.103 netmask 255.255.255.255#在上一条命令之后输入这一条,表示当上一条global的全局地址全部分配完毕后,才使用这条命令的全局地址池firewall(config)# static (dmz,outside) 192.168.9.21 172.5.5.2#static [(internal_if_name,external_if_name)] global_ip local_ip[netmask network_mask][max_conns [em_limit]][norandomseq]#配置静态网络地址转换,内部网络接口名dmz,外部网络接口名outside,#指定dmz区域的ip地址为172.5.5.2,转换为防火墙外部区域的IP地址192.168.9.21firewall(config)# show run nat #查看正在运行的nat
firewall(config)# no nat (inside) 101 10.9.9.0 255.255.255.0 #删除这条配置router(config)#int loopback #建立环回口(逻辑接口)模拟不同的本机网段
router(config-if)#ip add 192.168.1.1 255.255.255.255  #添加ip 地址和掩码给环回口
router(config-if)#no sh  		#sh是shutdown的缩写,开启接口
router(config-if)#shutdown 		#管理性的关闭接口

3. 静态路由与动态路由

(1)静态路由

firewall(config)# route outside 0 0 10.9.9.13#route if_name ip_address netmask gateway_ip [metric]#ip_address为目的ip,metric为到gateway_ip的跳数#配置默认路由为10.9.9.13,从防火墙outside接口出站的所有数据包,通过默认路由到达外网router(config)#ip route 0.0.0.0 0.0.0.0 192.168.9.1#目的地址为0.0.0.0(任意地址),下一跳地址192.168.9.1

(2)动态路由

rip协议
router(config)#router rip 	#启动rip协议
router(config-router)#network xxx.xxx.xxx.xxx #宣告自己的网段
router(config-router)#version 2  #转换为rip 2版本
router(config-router)#no auto-summary #关闭自动汇总功能,rip V2才有作用
router(config-router)# passive-int 接口名 #启动本路由器的那个接口为被动接口,该接口不会发送RIP更新
router(config-router)# nei xxx.xxx.xxx.xxx #neighbor的缩写,广播转单播报文,指定邻居的接收ip
igrp协议
router(config)#router igrp xxx #启动igrp协议 
router(config-router)#network xxx.xxx.xxx.xxx #宣告自己的网段
router(config-router)#variance xxx #调整倍数因子,使用不等价的负载均衡
eigrp协议
router(config)router eigrp xxx #启动协议
router(config-router)#network xxx.xxx.xxx.xxx #宣告自己的网段
router(config-router)#variance xxx #调整倍数因子,使用不等价的负载均衡
router(config-router)#no auto-summary #关闭自动汇总功能
ospf协议
router(config)router ospf xxx #启动协议启动一个OSPF协议进程
router(config-router)network xxx.xxx.xxx.xxx area xxx #宣告自己的接口或网段,在ospf的区域中可以把不同接口宣告在不同区域中
router(config-router)router-id xxx.xxx.xxx.xxx #配置路由的id
router(config-router)aera xxx stub #配置xxx区域为末梢区域,加入这个区域的路由器全部要配置这个条命令
router(config-router)aera xxx stub no-summary  #配置xxx区域为完全末梢区域,只在ABR上配置
router(config-router)aera xxx nssa #配置xxx区域为非纯末梢区域(NSSA)加入这个区域的路由器全部要配置这个条命令
router(config-router)aera xxx nssa no-summary  #配置xxx区域为完全非纯末梢区域,只在ABR上配置,#并发布缺省路由信息给进入这个区域内的路由器

4. 保存配置

router#wr #write的缩写,将RAM中的当前配置存储到NVRAM中,下次路由器启动就是执行保存的配置
router#Copy running-config startup-config #命令与write效果一样

5. 查看命令

特权模式下:
router#show ip int br #brief的缩写,查看当前的路由器的接口ip地址启用情况
router#show ip route #查看当前的路由表
router#show ? #查看show命令用法
firewall(config)#show running-config nat #查看当前的 NAT 配置
firewall(config)#show running-config global #查看global命令配置
firewall#show config #查看防火墙配置
firewall#show run interface e0 #查看e0接口的nameif,security-level,ip address

6. 访问控制列表

防火墙流量过滤只关注第一个初始化的数据包,而非响应包。防火墙接口没有绑定ACL时,出站的流量默认是放行,入站流量默认说拒绝。那么,拒绝默认可以出站的流量,放行默认不能入站的流量,就需要通过配置访问控制列表(Access Control List,ACL)实现流量过滤。

防火墙上的一个接口只能绑定一个ACL

#创建访问控制规则
pixfirewall(config)# access-list acl_id [line line-num] deny|permit protocol source_addr source_mask [operator [port]] destination_addr destination_mask operator [port]acl_id 指定ACL名称
deny|permit 拒绝|允许通过PIX防火墙的数据包
operator 有效的操作符有lt,gt,eq,neq,range
remark 添加到ACL中的注释
text 用于remark注释的正文show access-list		 #显示ACL
clear access-list [acl_id] #删除所有或指定条目的ACL
no access-list acl_id 	#删除指定条目的ACL#绑定到防火墙的特定接口
pixfirewall(config)# access-group acl_id in interface interface_name#绑定一个ACL到一个接口show access-group acl_id in interface interface_name	 #显示绑定在interface_name接口的ACL
clear access-group acl_id in interface interface_name #删除acl_id标识的ACL中的所有条目
no access-group acl_id in interface interface_name 	#删除绑定在接口上acl_id标识的ACL

示例:

pixfirewall(config)# access-list 101 extended permit icmp any any echo-reply#创建ACL,放行ping命令回显数据包,标识ID为101
pixfirewall(config)# access-list 101 permit tcp any host 192.168.9.21 eq 23#创建ACL,放行所有到目的主机192.168.9.21且端口号为23的TCP协议数据包,标识ID为101
pixfirewall(config)# show access-list
access-list cached ACL log flows: total 0, denied 0 (deny-flow-max 4096)alert-interval 300
access-list 101; 2 elements
access-list 101 line 1 extended permit icmp any any echo-reply (hitcnt=0) 0x30901cd
access-list 101 line 2 extended permit tcp any host 192.168.9.21 eq telnet (hitcnt=0) 0x17597d2pixfirewall(config)# access-group 101 in interface outside#接口outside绑定标识为101的ACL
pixfirewall(config)# access-group 101 in interface dmz#接口dmz绑定标识为101的ACL
pixfirewall(config)# show run access-group
access-group 101 in interface outside
access-group 101 in interface dmz

相关文章:

路由器与防火墙配置命令

路由器与防火墙配置命令 小明啊,你不是学计算机的嘛,叔叔家的路由器坏了,可以过来帮叔叔看看吗 命令可以用缩写,造就一堆容易造成歧义的缩写,比如add是address的缩写,sh是shutdown的缩写。 默认为Cisco路…...

PosterRender 实现微信下程序 分享商品生成海报

PosterRender 是什么 PosterRender 是一种专注于生成高质量海报图像的技术或工具,常用于生成静态图片,特别是适合用于营销、宣传和展示的图形设计。它通常用于在服务端或客户端渲染复杂的图像,包括文字、图形、图标、背景等,生成…...

C语言及内核开发中的回调机制与设计模式分析

在C语言以及操作系统内核开发中,回调机制是一种至关重要的编程模式。它通过注册框架和定义回调函数,实现了模块间的解耦和灵活交互,为系统的扩展性和可维护性提供了有力支持。本文将深入探讨这种机制的工作原理、应用场景以及与设计模式的关联。 一、回调机制的核心概念 (…...

第27周JavaSpringboot git初识

Git 课程笔记 一、Git 的介绍 1. Git 的诞生背景 Git 是 Linux 内核的作者 Linus Torvalds 为了更好地管理 Linux 内核开发而创建的版本控制系统。在 Linux 内核开发初期,由于开发者众多,协作成本很高,后来使用了 BitKeeper 工具来辅助协作…...

代码随想录算法训练营第34天 | 62.不同路径 63. 不同路径 II 整数拆分 不同的二叉搜索树 (跳过)

62.不同路径 62. 不同路径 - 力扣(LeetCode) 本题大家掌握动态规划的方法就可以。 数论方法 有点非主流,很难想到。 代码随想录 视频讲解:动态规划中如何初始化很重要!| LeetCode:62.不同路径_哔哩哔哩_b…...

Java使用JDBC连接操作Sqlite 笔记250314

Java使用JDBC连接操作Sqlite 以下是使用 Java JDBC 连接和操作 SQLite 数据库的详细步骤&#xff1a; 1. 添加 SQLite JDBC 驱动 在项目中引入 SQLite JDBC 驱动依赖。 Maven 项目在 pom.xml 中添加&#xff1a;<dependency><groupId>org.xerial</groupId>…...

消息队列导致数据库数据读取不一致解决方案

我使用的是在数据库添加一个版本字段&#xff0c;记录版本&#xff0c;保证版本一致性&#xff0c;就能保证每次读取的是需要的内容。 具体问题&#xff1a;使用消息队列时&#xff0c;发送方给接收方发送消息&#xff0c;接收方修改了数据库的同时发送方查询数据库&#xff0…...

如何利用 Zeabur 实现 OceanBase 的一键部署

引言 Zeabur 是一个功能强大且即开即用的自动化部署平台&#xff0c;它不仅能迅速部署多种应用&#xff0c;还支持一键安装 MySQL、PostgreSQL 等数据库服务。 Zeabur 拥有众多国内外用户&#xff0c;如 AFFiNE、Bytebase 等企业客户&#xff0c;以及大量全栈和独立开发者。将…...

计算机网络进化论:从比特流到量子通信的深层解构

第一章 物理媒介与链路层(1960-1970) 1.1 比特流物理编码 // 曼彻斯特编码实现 vector<bool> manchester_encode(uint8_t byte) {vector<bool> bits;for(int i=7; i>=0; --i) {bool bit = (byte >> i) & 1;bits.push_back(bit); // 前半周期bits…...

超参数优化算法:scikit-opt库、Scikit-Optimize库

1 scikit-opt库&#xff1a;https://www.cnblogs.com/luohenyueji/p/18333387 https://blog.csdn.net/weixin_45750972/article/details/124683402 a 差分进化算法 (Differential Evolution)&#xff1a;一种基于群体搜索的优化算法&#xff0c;通过模拟生物进化的过程来寻找最…...

go语言学习教程推荐,零基础到做项目

一、基础入门阶段 官方教程&#xff08;免费&#xff09; • A Tour of Go&#xff1a;交互式入门教程&#xff0c;边学边练 • Go by Example&#xff1a;通过300代码片段学习语法 入门书籍 • &#x1f4d8;《Go语言圣经》中文版&#xff08;免费在线阅读&#xff09;&#…...

【商城实战(30)】从0到1搭建商城数据分析功能,开启数据驱动增长引擎

【商城实战】专栏重磅来袭&#xff01;这是一份专为开发者与电商从业者打造的超详细指南。从项目基础搭建&#xff0c;运用 uniapp、Element Plus、SpringBoot 搭建商城框架&#xff0c;到用户、商品、订单等核心模块开发&#xff0c;再到性能优化、安全加固、多端适配&#xf…...

(hash表+vector 数位和相等数对的最大和)leetcode 2342

一定要断点调试看看数据对不对的上&#xff01;&#xff01;&#xff01;不然很容易弄不清楚值和下标 这个题意思是在nums中找出相同数位和的值 如 数位和为7 nums中符合要求的有 43&#xff0c;7 在这些数中选两个相加取最大值&#xff0c;再与其他数位和取得的相加最大值比…...

c++中字符串string常用的函数

在C中&#xff0c; std::string 类有许多常用函数&#xff0c;以下是一些常见的&#xff1a; 1. length() 或 size() &#xff1a;返回字符串的长度&#xff08;字符个数&#xff09;&#xff0c;二者功能相同。例如&#xff1a; #include <iostream> #include <str…...

NO.39十六届蓝桥杯备战|结构体八道练习|加号小于号运算符重载|自定义排序(C++)

加号运算符重载_牛客题霸_牛客网 #include <iostream> using namespace std;class Time {public:int hours; // 小时int minutes; // 分钟Time() {hours 0;minutes 0;}Time(int h, int m) {this->hours h;this->minutes m;}void show() {cout <<…...

kmp报错→Cannot find skiko-windows-x64.dll.sha256

1、前言 学习kmp&#xff08;Kotlin MultiPlatform简称&#xff09;过程中报了错误&#xff0c;这个报错在直接运行desktop的main方法才会出现&#xff0c;用gradle运行却不会报错&#xff0c;新建的kmp项目也不会出现&#xff0c;我学习的写了一些代码的项目才会出现。   运…...

Cocos Creator Shader入门实战(四):预处理宏定义和Chunk

引擎&#xff1a; 3.8.5 您好&#xff0c;我是鹤九日&#xff01; 回顾 学习Shader&#xff0c;前期是让人烦躁无味的&#xff0c;后期可能就是各种的逻辑让人抓耳挠腮。 一成不变的内容&#xff1a;遵循引擎设定的规则&#xff0c;理解引擎要求的规范。 这里&#xff0c;简单…...

K8S快速部署

前置虚拟机环境正式部署BUG解决 前置虚拟机环境 每个虚拟机配置一次就好 #关闭防火墙 systemctl stop firewalld systemctl disable firewalld #关闭 selinux sed -i s/enforcing/disabled/ /etc/selinux/config # 永久 setenforce 0 # 临时 #关闭 swap swapoff -a # 临时 vi…...

汽车PKE无钥匙进入系统一键启动系统定义与原理

汽车智能钥匙&#xff08;PKE无钥匙进入系统&#xff09;一键启动介绍 系统定义与原理 汽车无钥匙进入系统&#xff0c;简称PKE&#xff08;Passive Keyless Entry&#xff09;&#xff0c;该系统采用了RFID无线射频技术和车辆身份编码识别系统&#xff0c;率先应用小型化、小…...

使用 VLOOKUP 和条件格式在 Excel 中查找并标红匹配的串号

使用 VLOOKUP 和条件格式在 Excel 中查找并标红匹配的串号 你的步骤非常详细且清晰&#xff0c;能够帮助用户在 Excel 中通过 VLOOKUP 和条件格式来查找并标红匹配的串号。以下是对你提供的步骤的简要总结和补充说明&#xff1a; 1. 添加“是否匹配”列 在 a.xlsx 中新增一列…...

WPF程序使用AutoUpdate实现自动更新

AutoUpdate.NET使用 一、AutoUpdater.NET 简介 AutoUpdater.NET 是一个开源库&#xff0c;支持从各种源&#xff08;如GitHub、FTP、HTTP服务器等&#xff09;下载并安装更新。它提供了灵活的配置选项&#xff0c;允许开发者根据需求定制更新检查逻辑和用户体验。 二、安装 …...

Dify平台离线镜像部署

Dify 是一款开源的大语言模型(LLM) 应用开发平台。它融合了后端即服务&#xff08;Backend as Service&#xff09;和 LLMOps 的理念&#xff0c;使开发者可以快速搭建生产级的生成式 AI 应用。即使你是非技术人员&#xff0c;也能参与到 AI 应用的定义和数据运营过程中。 前提…...

每日Attention学习28——Strip Pooling

模块出处 [CVPR 20] [link] Strip Pooling: Rethinking Spatial Pooling for Scene Parsing 模块名称 Strip Pooling (SP) 模块结构 模块特点 本质是空间注意力的一种使用横/纵两个方向的条形池化获得一维方向上的重要程度&#xff0c;结合后便可以扩展至二维方向 模块代码 …...

Android Room 框架公共模块源码深度剖析(四)

一、引言 在 Android 开发中&#xff0c;数据持久化是一个常见的需求。Android Room 框架作为 Android Jetpack 组件的一部分&#xff0c;为开发者提供了一个抽象层&#xff0c;使得在 SQLite 数据库上进行数据操作变得更加简单和高效。Room 框架包含多个模块&#xff0c;其中…...

玩转python:通俗易懂掌握高级数据结构-collections模块之UserDict

引言 UserDict是Python中collections模块提供的一个强大工具&#xff0c;它是dict的封装类&#xff0c;允许用户自定义字典的行为。通过继承UserDict&#xff0c;开发者可以轻松扩展字典的功能&#xff0c;实现自定义的字典逻辑。本文将详细介绍UserDict的关键用法和特性&…...

ollama docker设置模型常驻显存

参考&#xff1a; https://github.com/ollama/ollama/issues/5272 https://deepseek.csdn.net/67cfd7c93b685529b708fdee.html 通过-e传入环境变量&#xff0c;ollama运行&#xff1a; docker run -d --gpusall -e OLLAMA_KEEP_ALIVE-1 -v ollama:/root/.ollama -p 11434:114…...

双3060、Ubuntu22.04、cuda12.8安装deepseek 32b-Q8

以下是针对双RTX 3060显卡&#xff08;12GB显存&#xff09;在Ubuntu 22.04系统部署DeepSeek-R1-32b-qwen-distill-q8模型的完整流程&#xff0c;结合最新技术规范与魔塔社区资源&#xff1a; 一、驱动与CUDA环境配置 1. 禁用开源驱动 bash sudo tee /etc/modprobe.d/blackli…...

无再暴露源站!群联AI云防护IP隐匿方案+防绕过实战

一、IP隐藏的核心原理 群联AI云防护通过三层架构实现源站IP深度隐藏&#xff1a; 流量入口层&#xff1a;用户访问域名解析至高防CNAME节点&#xff08;如ai-protect.example.com&#xff09;智能调度层&#xff1a;基于AI模型动态分配清洗节点&#xff0c;实时更新节点IP池回…...

Chrome 调试器第二次连接不上?

一、连接不上 当使用 chrome_options.add_experimental_option("debuggerAddress", "127.0.0.1:9222") 连接 Chrome 调试器时&#xff0c;调试一次后就连不上&#xff0c;可能由以下几种原因导致&#xff1a; 1. Chrome 实例关闭 原因&#xff1a;在调试…...

【深度学习|目标检测】YOLO系列anchor-based原理详解

YOLO之anchor-based 一、关于anchors的设置二、网络如何利用anchor来训练关于register_buffer训练阶段的anchor使用推理阶段的anchor使用 三、训练时的正负样本匹配静态策略&#xff1a;跨分支采样跨anchor采样跨grid采样 动态策略 总结起来其实就是&#xff1a;基于anchor-bas…...