//将交换机连接监控设备的端口配置观察端口
//例如,将监控设备的端口GE0/0/20配置成观察端口
[SWA]observe-port 1 int g0/0/20
//将待镜像的报文流经的端口设置镜像端口,将这个端口需要镜像的方向,即接受或发送报文的方向绑定到观察端口
//将连接下游主机的端口GE0/0/7配置成镜像端口
[SWA]int g0/0/7
[SWA]port-mirroring to observe-port 1 inbound
配置如上后,就可以在监控设备上启用监控软件,获取镜像报文
]]>应用场景:两台物理交换机(同段)之间的telnet访问 SW2 可以 以AAA验证方式登录到SW1的VRP系统
已经配置好了交换机的vlanif 2端口ip (两台都在同段)
配置Telnet登录所用的VTY用户界面的终端属性,指定VTY 0\~4这5条VTY虚拟通道可以用于登录
[SW1]user-interface vty 0 4
[SW1-ui-vty0-4]idle-timeout 20 //设置超时间为20分钟
[SW1-ui-vty0-4]history-command max-size 20 //设置历史命令缓冲区的大小为20
配置Telnet登录VTY用户界面的AAA验证方式和用户类别
[SW1-ui-vty0-4]authentication-mode aaa
[SW1-ui-vty0-4]user privilege level 15
[SW1-ui-vty0-4]q
配置控制通过Telnet访问交换机的用户ACL策略
[SW1]user-interface maximum-vty 5 //设置VTY用户界面的最大个数
[SW1]acl 2001
[SW1-acl-basic-2001]rule permit source xxx //配置仅允许IP地址xx的主机访问
[SW1-acl-basic-2001]q
[SW1]user-interface vty 0 4
[SW1-ui-vty0-4]acl 2001 inbound //在VTY 0-4这5个用户界面中应用上面的ACL
创建用于Telnet登录AAA验证的用户名和密码
[SW1]aaa
[SW1-aaa]local-user huawei password cipher hello@123 //设置用户密码
[SW1-aaa]local-user huawei service-type telnet //设置该用户的服务类型为telnet
[SW1-aaa]local-user huawei privilege level 15 //生效级别设置的15
开启Telnet服务器功能,并设置端口
[SW1]telnet server enable
[SW1]telnet server port 1028
测试结果查看,在SW2测试telnet交换机SW1
]]>首先Esxi开启SSH
在没有插入USB硬盘前的操作
/etc/init.d/usbarbitrator stop
chkconfig usbarbitrator off
接入硬盘后查看是否识别
esxcli storage core device list | grep -i usb
查看USB硬盘信息,如下图,第一行就是,每个人的信息都不会一样的
partedUtil mklabel /dev/disks/mpx.vmhba33\:C0\:T0\:L0 gpt
partedUtil getptbl /dev/disks/mpx.vmhba33\:C0\:T0\:L0
换算硬盘的二进制数值
eval expr $(partedUtil getptbl /dev/disks/mpx.vmhba33\:C0\:T0\:L0 | tail -1 | awk '{print $1 " \\* " $2 " \\* " $3}') - 1
以下命令是让系统来识别我们的硬盘
partedUtil setptbl /dev/disks/mpx.vmhba33\:C0\:T0\:L0 gpt "1 2048 7814032064 AA31E02A400F11DB9590000C2911D1B8 0"
切换成vmfs5
vmkfstools -C vmfs5 -S USB_Datastore /dev/disks/mpx.vmhba33\:C0\:T0\:L0:1
回到esxi存储看,成功添加了一块USB硬盘
注:如果之后usb硬盘有换到别的usb口,esxi可能会一下无法识别到硬盘,需要将esxi重启一下即可。
]]>需要以下环境
大致功能:通过在K8s集群中部署blackbox工具(用于监控服务,检查网络可用性)和Grafana、Prometheus(监控可视化面板)更直观的体现网络连通性,可以进行警报和分析
本文章通过若海博客的【Kubernetes 集群上安装 Blackbox 监控网站状态】和【Kubernetes 集群上安装 Grafana 和 Prometheus】整合而成
确保主节点和子节点都有Docker环境(最好是同一个版本)
//安装Docker,一键安装(如有安装可以忽略)
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
//开启docker、并设置开机自启
systemctl start docker & systemctl enable docker
apt update
apt install -y wireguard
echo "net.ipv4.ip_forward = 1" >/etc/sysctl.d/ip_forward.conf
sysctl -p /etc/sysctl.d/ip_forward.conf
//以下Token值请保存,任意字符串
export SERVER_TOKEN=r83nui54eg8wihyiteshuo3o43gbf7u9er63o43gbf7uitujg8wihyitr6
export PUBLIC_IP=$(curl -Ls http://metadata.tencentyun.com/latest/meta-data/public-ipv4)
export PRIVATE_IP=$(curl -Ls http://metadata.tencentyun.com/latest/meta-data/local-ipv4)
export INSTALL_K3S_SKIP_DOWNLOAD=true
export DOWNLOAD_K3S_BIN_URL=https://github.com/k3s-io/k3s/releases/download/v1.28.2%2Bk3s1/k3s
if [ $(curl -Ls http://ipip.rehi.org/country_code) == "CN" ]; then
DOWNLOAD_K3S_BIN_URL=https://ghproxy.com/${DOWNLOAD_K3S_BIN_URL}
fi
curl -Lo /usr/local/bin/k3s $DOWNLOAD_K3S_BIN_URL
chmod a+x /usr/local/bin/k3s
curl -Ls https://get.k3s.io | sh -s - server \
--cluster-init \
--token $SERVER_TOKEN \
--node-ip $PRIVATE_IP \
--node-external-ip $PUBLIC_IP \
--advertise-address $PRIVATE_IP \
--service-node-port-range 5432-9876 \
--flannel-backend wireguard-native \
--flannel-external-ip
//安装Docker,一键安装(如有安装可以忽略)
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
//开启docker、并设置开机自启
systemctl start docker & systemctl enable docker
//子节点代码
apt update
apt install -y wireguard
echo "net.ipv4.ip_forward = 1" >/etc/sysctl.d/ip_forward.conf
sysctl -p /etc/sysctl.d/ip_forward.conf
export SERVER_IP=43.129.195.33 //此ip填你的主节点地址
export SERVER_TOKEN=r83nui54eg8wihyiteshuo3o43gbf7u9er63o43gbf7uitujg8wihyitr6
export PUBLIC_IP=$(curl -Ls http://metadata.tencentyun.com/latest/meta-data/public-ipv4)
export PRIVATE_IP=$(curl -Ls http://metadata.tencentyun.com/latest/meta-data/local-ipv4)
export INSTALL_K3S_SKIP_DOWNLOAD=true
export DOWNLOAD_K3S_BIN_URL=https://github.com/k3s-io/k3s/releases/download/v1.28.2%2Bk3s1/k3s
if [ $(curl -Ls http://ipip.rehi.org/country_code) == "CN" ]; then
DOWNLOAD_K3S_BIN_URL=https://ghproxy.com/${DOWNLOAD_K3S_BIN_URL}
fi
curl -Lo /usr/local/bin/k3s $DOWNLOAD_K3S_BIN_URL
chmod a+x /usr/local/bin/k3s
curl -Ls https://get.k3s.io | sh -s - agent \
--server https://$SERVER_IP:6443 \
--token $SERVER_TOKEN \
--node-ip $PRIVATE_IP \
--node-external-ip $PUBLIC_IP
//拉取镜像
docker pull rehiy/blackbox
//一键启动
docker run -d \
--name blackbox \
--restart always \
--publish 9115:9115 \
--env "NODE_NAME=guangzhou-taozi" \
--env "NODE_OWNER=Taozi" \
--env "NODE_REGION=广州" \
--env "NODE_ISP=TencentCloud" \
--env "NODE_BANNER=From Taozii-www.xiongan.host" \
rehiy/blackbox
//开始注册
docker logs -f blackbox
在主节点创建一个目录,名字任意,然后在同一目录中创建两个文件(grafpro.yaml、grafpro.sh)
kind: Deployment
apiVersion: apps/v1
metadata:
name: &name grafpro
labels:
app: *name
spec:
selector:
matchLabels:
app: *name
template:
metadata:
labels:
app: *name
spec:
initContainers:
- name: busybox
image: busybox
command:
- sh
- -c
- |
if [ ! -f /etc/prometheus/prometheus.yml ]; then
cat <<EOF >/etc/prometheus/prometheus.yml
global:
scrape_timeout: 25s
scrape_interval: 1m
evaluation_interval: 1m
scrape_configs:
- job_name: prometheus
static_configs:
- targets:
- 127.0.0.1:9090
EOF
fi
volumeMounts:
- name: *name
subPath: etc
mountPath: /etc/prometheus
containers:
- name: grafana
image: grafana/grafana
securityContext:
runAsUser: 0
ports:
- containerPort: 3000
volumeMounts:
- name: *name
subPath: grafana
mountPath: /var/lib/grafana
- name: prometheus
image: prom/prometheus
securityContext:
runAsUser: 0
ports:
- containerPort: 9090
volumeMounts:
- name: *name
subPath: etc
mountPath: /etc/prometheus
- name: *name
subPath: prometheus
mountPath: /prometheus
volumes:
- name: *name
hostPath:
path: /srv/grafpro
type: DirectoryOrCreate
---
kind: Service
apiVersion: v1
metadata:
name: &name grafpro
labels:
app: *name
spec:
selector:
app: *name
ports:
- name: grafana
port: 3000
targetPort: 3000
- name: prometheus
port: 9090
targetPort: 9090
---
kind: Ingress
apiVersion: networking.k8s.io/v1
metadata:
name: &name grafpro
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: web,websecure
spec:
rules:
- host: grafana.example.org
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: *name
port:
name: grafana
- host: prometheus.example.org
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: *name
port:
name: prometheus
tls:
- secretName: default
//警告:请修改路径和访问域名
# 配置存储路径
export GRAFPRO_STORAGE=${GRAFPRO_STORAGE:-"/srv/grafpro"}
# 配置访问域名
export GRAFANA_DOMAIN=${GRAFPRO_DOMAIN:-"grafana.example.org"}
export PROMETHEUS_DOMAIN=${PROMETHEUS_DOMAIN:-"prometheus.example.org"}
# 修改参数并部署服务
cat grafpro.yaml \
| sed "s#/srv/grafpro#$GRAFPRO_STORAGE#g" \
| sed "s#grafana.example.org#$GRAFANA_DOMAIN#g" \
| sed "s#prometheus.example.org#$PROMETHEUS_DOMAIN#g" \
| kubectl apply -f -
chmod +x grafpro.sh
./grafpro.sh
注意以下,开启端口9115、9090
浏览器打开地址http://grafana.example.org 账号密码都是admin,首次登录,提示修改密码,修改后自动跳到控制台
浏览器打开http://grafana.example.org/connections/datasources/选择第一个,然后编辑URL为:http://127.0.0.1:9090 然后保存
然后选择创建好的Prometheus,导入面板
浏览器打开http://prometheus.example.org,查看信息
//回到主节点的/srv/grafpro/etc目录下
编辑yml文件,备份一下原有的yml,创建新的yml
mv prometheus.yml prometheus00.yml
//以下是yml文件内容(若部署时修改了负载名称blackbox-exporter,下文的配置文件也要做相应的修改)
global:
scrape_timeout: 15s
scrape_interval: 1m
evaluation_interval: 1m
scrape_configs:
# prometheus
- job_name: prometheus
static_configs:
- targets:
- 127.0.0.1:9090
# blackbox_all
- job_name: blackbox_all
static_configs:
- targets:
- blackbox-gz:9115
labels:
region: '广州,腾讯云'
# http_status_gz
- job_name: http_status_gz
metrics_path: /probe
params:
module: [http_2xx] #配置get请求检测
static_configs:
- targets:
- https://www.example.com
labels:
project: 测试1
desc: 测试网站描述1
- targets:
- https://www.example.org
labels:
project: 测试2
desc: 测试网站描述2
basic_auth:
username: ******
password: ******
relabel_configs:
- target_label: region
replacement: '广州,腾讯云'
- source_labels: [__address__]
target_label: __param_target
- source_labels: [__param_target]
target_label: instance
- target_label: __address__
replacement: blackbox-gz:9115:80
然后重启svc,方法如下:首先查看pod
kubectl get pod
然后删除查看到关于grafana的pod,然后稍等几分钟即可
kubectl delete pod *
下载附件json在Grafana仪表盘里导入即可
导入后可以查看到监控仪已经开始了,显示各项信息
]]>//主节点代码
apt update
apt install -y wireguard
echo "net.ipv4.ip_forward = 1" >/etc/sysctl.d/ip_forward.conf
sysctl -p /etc/sysctl.d/ip_forward.conf
export SERVER_TOKEN=r83nui54eg8wihyiteshuo3o43gbf7u9er63o43gbf7uitujg8wihyitr6
export PUBLIC_IP=$(curl -Ls http://metadata.tencentyun.com/latest/meta-data/public-ipv4)
export PRIVATE_IP=$(curl -Ls http://metadata.tencentyun.com/latest/meta-data/local-ipv4)
export INSTALL_K3S_SKIP_DOWNLOAD=true
export DOWNLOAD_K3S_BIN_URL=https://github.com/k3s-io/k3s/releases/download/v1.28.2%2Bk3s1/k3s
if [ $(curl -Ls http://ipip.rehi.org/country_code) == "CN" ]; then
DOWNLOAD_K3S_BIN_URL=https://ghproxy.com/${DOWNLOAD_K3S_BIN_URL}
fi
curl -Lo /usr/local/bin/k3s $DOWNLOAD_K3S_BIN_URL
chmod a+x /usr/local/bin/k3s
curl -Ls https://get.k3s.io | sh -s - server \
--cluster-init \
--token $SERVER_TOKEN \
--node-ip $PRIVATE_IP \
--node-external-ip $PUBLIC_IP \
--advertise-address $PRIVATE_IP \
--service-node-port-range 5432-9876 \
--flannel-backend wireguard-native \
--flannel-external-ip
//子节点代码
apt update
apt install -y wireguard
echo "net.ipv4.ip_forward = 1" >/etc/sysctl.d/ip_forward.conf
sysctl -p /etc/sysctl.d/ip_forward.conf
export SERVER_IP=43.129.195.33
export SERVER_TOKEN=r83nui54eg8wihyiteshuo3o43gbf7u9er63o43gbf7uitujg8wihyitr6
export PUBLIC_IP=$(curl -Ls http://metadata.tencentyun.com/latest/meta-data/public-ipv4)
export PRIVATE_IP=$(curl -Ls http://metadata.tencentyun.com/latest/meta-data/local-ipv4)
export INSTALL_K3S_SKIP_DOWNLOAD=true
export DOWNLOAD_K3S_BIN_URL=https://github.com/k3s-io/k3s/releases/download/v1.28.2%2Bk3s1/k3s
if [ $(curl -Ls http://ipip.rehi.org/country_code) == "CN" ]; then
DOWNLOAD_K3S_BIN_URL=https://ghproxy.com/${DOWNLOAD_K3S_BIN_URL}
fi
curl -Lo /usr/local/bin/k3s $DOWNLOAD_K3S_BIN_URL
chmod a+x /usr/local/bin/k3s
curl -Ls https://get.k3s.io | sh -s - agent \
--server https://$SERVER_IP:6443 \
--token $SERVER_TOKEN \
--node-ip $PRIVATE_IP \
--node-external-ip $PUBLIC_IP
//docker配置镜像加速器
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://wml59v5w.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
//非集群机器安装集群管理面板kuboard
sudo docker run -d \
--restart=unless-stopped \
--name=kuboard \
-p 80:80/tcp \
-p 10081:10081/udp \
-p 10081:10081/tcp \
-e KUBOARD_ENDPOINT="http://kuboard.my-company.com:80" \
-e KUBOARD_AGENT_SERVER_UDP_PORT="10081" \
-e KUBOARD_AGENT_SERVER_TCP_PORT="10081" \
-v /root/kuboard-data:/data \
eipwork/kuboard:v3.1.7.1
]]>作为VPN服务器的Win2003 添加一张网卡用于连接内部权限子网的端口
选择路由和远程访问
选择配置VPN服务器
选择外网网卡
IP地址指定→自动
名称和地址转换服务→启用基本的名称和地址服务
管理多个远程访问服务器→否
完成后确定
在XP系统中进行配置,添加网络连接
网络连接→虚拟专用网络连接
连接名→随意
VPN服务器选择→win2003的ip地址
下一步完成后就会弹出一个登陆窗口,此时需要去win 2003VPN服务器中创建新的用户和密码
设置用户权限
在XP端中成功登录连接后
运行cmd命令执行ipconfig,可以查看客户机已经获取的新地址与内部网络一致了
查看到时随机地址,只需要去VPN服务器中修改配置,改为静态地址即可
再次测试,就可以看到是自定义的静态地址池
]]>进入AWS管理控制台中,创建VPC,包括单个可用区中的一个 VPC、一个互联网网关、一个公有子网和一个私有子网,以及两个路由表和一个 NAT 网关。
lab
。展开 Customize subnets CIDR blocks(自定义子网 CIDR 块)部分
10.0.0.0/24
10.0.1.0/24
创建成功
lab-subnet-public2
10.0.2.0/24
此子网将包含所有以 10.0.2.x 开头的 IP 地址。
lab-vpc
lab-subnet-private2
10.0.3.0/24
此子网将包含所有以 10.0.3.x 开头的 IP 地址。
现在,您将配置这个新的私有子网,将流向互联网的流量路由到 NAT 网关,以便第二个私有子网中的资源能够连接到互联网,同时这些资源仍然保持私有。这是通过配置路由表完成的。
路由表包含一组规则(称为路由),用于确定网络流量的流向。VPC 中的每个子网必须与一个路由表相关联;而路由表控制子网的路由。
此路由表用于路由来自私有子网的流量。
此路由表用于公有子网的流量
Web Security Group
Enable HTTP access
配置以下设置:
Permit web requests
配置网络设置:
在 Network settings(网络设置)旁边,选择 Edit(编辑),然后配置:
接下来,您将实例配置为使用之前创建的 Web Security Group。
配置一个脚本,在实例启动时在实例上运行此脚本:
滚动到页面底部,然后复制下面显示的代码并将其粘贴到 User data(用户数据)框中:
#!/bin/bash
# Install Apache Web Server and PHP
dnf install -y httpd wget php mariadb105-server
# Download Lab files
wget https://aws-tc-largeobjects.s3.us-west-2.amazonaws.com/CUR-TF-100-ACCLFO-2/2-lab2-vpc/s3/lab-app.zip
unzip lab-app.zip -d /var/www/html/
# Turn on web server
chkconfig httpd on
service httpd start
此脚本将在实例的来宾操作系统上以根用户权限运行,并且会在实例首次启动时自动运行。此脚本将安装一个 Web 服务器、一个数据库和 PHP 库,然后在 Web 服务器上下载并安装 PHP Web 应用程序。
要求:某公司在北京设有总部并且在重庆设置分部。公司希望两个区域的员工可以通过私网路由互相访问。在网络边缘设备上使用BGP协议将私网路由发送给运营商,同时需要保证网络信息的安全性。R1,R2,R3,R4属于AS100模拟运营商。运营商内部使用OSPF协议实现IGP互通。在R1,R4建立MP-IBGP邻居,使用MPLS VPN技术使两个区域通过私网路由互访。
首先配置好各个路由器的接口地址以及路由器的环回口地址
在R1上创建实例:
在R1上创建VPN实例1,并将实例1和接口G0/0/0绑定。需注意,在接口上进行实例的绑定后,原配置IP地址会清空,需要重新配置IP地址。
VPN实例用于将VPN私网路由域公网路由隔离,不同VPN实例中的路由也是相互隔离的。
在实例中需要配置RD值和RT值,RD用于区分每个VPN实例的VPN路由,最好保证RD值全网唯一,保证路由在公网传递时不冲突;RT值用于控制VPN路由信息的接收和发布。
在R4上创建实例:
在R1上配置ospf:
在R2上配置ospf:
在R3上配置ospf:
在R4上配置ospf:
在R5上配置ospf:
在R6上配置ospf:
在R1上查看邻居关系:
可以观察到,R1与R2,R5成功建立OSPF邻居关系。
在R1上配置mpls:
在R2上配置mpls:
在R3上配置mpls:
在R4上配置mpls:
在R1上配置BGP:
在R1与R4之间使用环回口建立IBGP邻居关系。
在R4上配置BGP:
在R1上查看BGO vpnv4邻居关系:
在R1上路由引入:
在R1上将实例中的路由引入进BGP中,通过Vpn4路由向外通告,并将BGP的路由引入进OSPF实例下。由于BGP协议可承载的路由条目更多,为了防止后期引入路由条目过多,设备的负载压力过大,使用路由控制,只引入重庆分公司的路由。
在R4上路由引入:
在R4上将实例中的路由引入进BGP中,通过Vpn4路由向外通告,并将BGP的路由引入进OSPF实例下。由于BGP协议可承载的路由条目更多,为了防止后期引入路由条目过多,设备的负载压力过大,使用路由控制,只引入北京总公司的路由。
在R1上查看标签交换路径:
可以观察到,在R1上有AS100内所有的32位环回口地址的FEC,并且为北京总公司的网络生成Vpnv4标签
在R5上查看路由:
可以观察到,R5通过OSPF学习到重庆分公司的6.6.6.6/32的路由。
本路由在R4上通过Vpnv4路由传递给R1,并在R1的OSPF实例下引入BGP路由学习到。
首先配置各个路由器及接口ip地址
R1:
[R1-ospf-1]dis this
[V200R003C00]
#
ospf 1 router-id 1.1.1.1
area 0.0.0.0
network 10.1.1.1 0.0.0.0
network 10.123.12.1 0.0.0.0
#
return
R2:
[R2-ospf-1]dis this
[V200R003C00]
#
ospf 1 router-id 2.2.2.2
area 0.0.0.0
network 10.123.12.2 0.0.0.0
network 10.123.23.2 0.0.0.0
network 20.1.1.1 0.0.0.0
#
return
R3:
[R3-ospf-1]dis this
[V200R003C00]
#
ospf 1 router-id 3.3.3.3
area 0.0.0.0
network 10.123.23.3 0.0.0.0
network 10.123.34.3 0.0.0.0
network 30.1.1.1 0.0.0.0
#
return
R4:
[R4-ospf-1]dis this
[V200R003C00]
#
ospf 1 router-id 4.4.4.4
area 0.0.0.0
network 10.123.34.4 0.0.0.0
network 10.123.45.4 0.0.0.0
network 40.1.1.1 0.0.0.0
#
return
R5:
[R5-ospf-1]dis this
[V200R003C00]
#
ospf 1 router-id 5.5.5.5
area 0.0.0.0
network 10.123.45.5 0.0.0.0
#
return
在R9上检查路由表
在R1上配置MPLS
在R2上配置MPLS
在R3上配置MPLS
在R4上配置MPLS
在R1上配置静态LSP
R1作为ingress设备在去往40.1.1.1/32和 10.123.45.0/24网络时打上标签,同时作为egress设备,当收到标签为201或者205时弹出标签进行路由转发。
[R1]static-lsp ingress 1to4 destination 40.1.1.1 32 nexthop 10.123.12.2 out-labe
l 104
[R1]static-lsp ingress 1to45 destination 10.123.45.0 24 nexthop 10.123.12.2 out-
label 105
[R1]static-lsp egress 4to1 incoming-interface g0/0/0 in-label 201
[R1]static-lsp egress 45to1 incoming-interface g0/0/0 in-label 205
在R2上配置静态LSP
R2作为Transit设备进行标签的交换。
[R2]static-lsp transit 1to4 incoming-interface GigabitEthernet 0/0/0 in-label 10
4 nexthop 10.123.23.3 out-label 204
[R2]static-lsp transit 1to45 incoming-interface GigabitEthernet 0/0/0 in-label 1
05 nexthop 10.123.23.3 out-label 205
[R2]static-lsp transit 4to1 incoming-interface GigabitEthernet0/0/1 in-label 301
nexthop 10.123.12.1 out-label 201
[R2]static-lsp transit 45to1 incoming-interface GigabitEthernet0/0/1 in-label 30
5 nexthop 10.123.12.1 out-label 205
在R3上配置静态LSP
R3作为Transit设备进行标签交换。
[R3]static-lsp transit 1to4 incoming-interface GigabitEthernet 0/0/0 in-label 20
4 nexthop 10.123.34.4 out-label 304
[R3]static-lsp transit 4to1 incoming-interface GigabitEthernet0/0/1 in-label 401
nexthop 10.123.23.2 out-label 301
[R3]static-lsp transit 1to45 incoming-interface GigabitEthernet 0/0/0 in-label 2
05 nexthop 10.123.23.3 out-label 305
[R3]static-lsp transit 45to1 incoming-interface GigabitEthernet0/0/1 in-label 40
5 nexthop 10.123.23.2 out-label 305
在R4上配置静态LSP
R4与R1类似,同样既作为ingress设备又作为egress设备。作为ingress设备在去往40.1.1.1/32和 10.123.45.0/24网络时打上标签,同时作为egress设备,当收到标签为201或者205时弹出标签进行路由转发。
[R4]static-lsp egress 1to4 incoming-interface g0/0/0 in-label 304
[R4]static-lsp egress 1to45 incoming-interface g0/0/0 in-label 305
[R4]static-lsp ingress 4to1 destination 10.1.1.1 32 nexthop 10.123.34.3 out-labe
l 401
在R1上查看标签交换路径:
标签路径中有In/Out Label,在mpls中,Out Label为空时,表示该FEC是由本路由器向上游发布标签,该路由器一般是该FEC的egress设备。In Label是指本路由器为某个FEC分配给对端的Out Label标签,当In Label为空时,表示本路由器是该LSP的最上游路由器,一般是ingress设备。
在R2上查看
在R3上查看
在R4上查看
在R1上Ping测试
右键点击R1设备,选择数据抓包中的G0/0/0接口进行抓包。在R1上带环回口ping测试R4的环回口地址。
进入抓包界面,点击源为10.1.1.1,目的地址为40.1.1.1的数据包查看。我们可以观察到,在数据包中存在MPLS的头部,由此,判断出10.1.1.1访问40.1.1.1走的是MPLS的路径。
]]>查看系统环境版本
[root@taozi ~]# cat /etc/os-release
NAME="openEuler"
VERSION="21.09"
ID="openEuler"
VERSION_ID="21.09"
PRETTY_NAME="openEuler 21.09"
ANSI_COLOR="0;31"
首先配置本地yum源,搭建repo服务器
清理缓存,重新创建缓存
[root@taozi ~]# dnf clean all
[root@taozi ~]# dnf makecache
#安装nginx服务
[root@taozi ~]# dnf install nginx -y
查看安装后的rpm包
启动nginxi服务并设置开机自启
[root@taozi ~]# systemctl start nginx
[root@taozi ~]# systemctl enable nginx
查看服务状态
Nginx服务的配置文件
/etc/nginx/nginx.conf 主要的配置文件
/etc/nginx/conf.d 配置文件的辅助目录,也包含在主配置文件当中
/usr/share/nginx/html web网站的index文件所在目录
查看语法错误【syntax is ok】
# firewall-cmd --add-service=http --permanent
success
# firewall-cmd --reload
success