配置PPPoE多播绑定vlanID并开启IPV6

2024-05-30 14:52

本文主要是介绍配置PPPoE多播绑定vlanID并开启IPV6,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

准备工作

确保你的系统已安装ppprp-pppoe包:

sudo apt-get install pppoe ppp

创建VLAN接口

假设你有两个VLAN ID,分别为100和200。我们首先创建VLAN接口eth0.100和eth0.200。

sudo ip link add link eth0 name eth0.100 type vlan id 100
sudo ip link add link eth0 name eth0.200 type vlan id 200# 启用VLAN接口
sudo ip link set up dev eth0.100
sudo ip link set up dev eth0.200

配置文件

首先,在/etc/ppp/peers/目录中为每个PPPoE连接创建一个配置文件。假设你有两个PPPoE账号,可以创建两个文件:provider1provider2

/etc/ppp/peers/provider1

plugin rp-pppoe.so
eth0.100  # 使用VLAN接口
user "pppoe账号_1"
noauth
persist
usepeerdns
+ipv6
noipdefault
nodefaultroute  # 不设置默认路由

/etc/ppp/peers/provider2

plugin rp-pppoe.so
eth0.100  # 使用VLAN接口
user "pppoe账号_2"
noauth
persist
usepeerdns
+ipv6
noipdefault
nodefaultroute  # 不设置默认路由

不设置默认路由是为了不影响管理口的网络连接。如果要设置负载均衡请注释该选项。或者有更好的办法可以在评论区留言。互相学习。

pppoe密码文件

/etc/ppp/chap-secrets/etc/ppp/pap-secrets文件中添加你的PPPoE账号和密码。

# Secrets for authentication using CHAP
# client        server  secret                  IP addresses
"pppoe账号_1" * "pppoe密码_1"
"pppoe账号_2" * "pppoe密码_2"

也可以将密码直接写进/etc/ppp/peers/provider*的文件里

参考:
nic-enp6s0.104  # 确保这个接口存在
user "pppoe账号"
password "pppoe密码"

启动脚本

以下是一个简化后的脚本,直接使用已存在的VLAN接口进行PPPoE连接

#!/bin/bash# 定义连接名称数组
CONNECTIONS=("provider1" "provider2")# 启动每个PPPoE连接
for conn in "${CONNECTIONS[@]}"; dopppd call $conn nodetach &
done# 等待所有连接启动
sleep 5  # 等待连接建立# 检查每个连接是否启动成功
for conn in "${CONNECTIONS[@]}"; doif ip a | grep -q "ppp"; thenecho "$conn connected successfully!"elseecho "Failed to connect $conn"fi
done#!/bin/bash# 定义连接名称数组
CONNECTIONS=("provider1" "provider2")# 启动每个PPPoE连接
for conn in "${CONNECTIONS[@]}"; dopppd call $conn nodetach &
done# 等待所有连接启动
sleep 5  # 等待连接建立# 检查每个连接是否启动成功
for conn in "${CONNECTIONS[@]}"; doif ip a | grep -q "ppp"; thenecho "$conn connected successfully!"elseecho "Failed to connect $conn"fi
done

验证

可以通过ifconfig 或者 ip r 来看是否已经拨号成功且已经获取到 IPV6 的地址

停止拨号

两种方式任选其一都可以。目前尚未考虑平滑停止的问题。

#!/bin/bash# 定义PPPoE配置文件名称数组
CONFIG_FILES=("provider_1" "provider_2")# 停止每个PPP连接
for config in "${CONFIG_FILES[@]}"; dosudo poff $config
done# 或者通过进程名来停止所有pppd连接
# ps aux | grep 'pppd call' | grep -v grep | awk '{print $2}' | xargs sudo kill

使用kill命令时要小心,确保只杀掉pppd进程,避免误杀其他进程。

提醒事项

  • 确保你的VLAN接口已经正确创建和启动。
  • 在配置文件中,将eth0.100和eth0.200替换为你的实际VLAN接口名称和ID。
  • 确保所有PPPoE连接都支持IPv6。

这个脚本应该能帮助你在Linux系统上更方便地实现支持VLAN ID的PPPoE多拨账号的连接,并且不设置默认路由和开启IPv6支持。如果仍有问题,请检查日志文件(/var/log/messages/var/log/ppp.log),以获取更多调试信息。

这篇关于配置PPPoE多播绑定vlanID并开启IPV6的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1016400

相关文章

Zookeeper安装和配置说明

一、Zookeeper的搭建方式 Zookeeper安装方式有三种,单机模式和集群模式以及伪集群模式。 ■ 单机模式:Zookeeper只运行在一台服务器上,适合测试环境; ■ 伪集群模式:就是在一台物理机上运行多个Zookeeper 实例; ■ 集群模式:Zookeeper运行于一个集群上,适合生产环境,这个计算机集群被称为一个“集合体”(ensemble) Zookeeper通过复制来实现

CentOS7安装配置mysql5.7 tar免安装版

一、CentOS7.4系统自带mariadb # 查看系统自带的Mariadb[root@localhost~]# rpm -qa|grep mariadbmariadb-libs-5.5.44-2.el7.centos.x86_64# 卸载系统自带的Mariadb[root@localhost ~]# rpm -e --nodeps mariadb-libs-5.5.44-2.el7

hadoop开启回收站配置

开启回收站功能,可以将删除的文件在不超时的情况下,恢复原数据,起到防止误删除、备份等作用。 开启回收站功能参数说明 (1)默认值fs.trash.interval = 0,0表示禁用回收站;其他值表示设置文件的存活时间。 (2)默认值fs.trash.checkpoint.interval = 0,检查回收站的间隔时间。如果该值为0,则该值设置和fs.trash.interval的参数值相等。

NameNode内存生产配置

Hadoop2.x 系列,配置 NameNode 内存 NameNode 内存默认 2000m ,如果服务器内存 4G , NameNode 内存可以配置 3g 。在 hadoop-env.sh 文件中配置如下。 HADOOP_NAMENODE_OPTS=-Xmx3072m Hadoop3.x 系列,配置 Nam

wolfSSL参数设置或配置项解释

1. wolfCrypt Only 解释:wolfCrypt是一个开源的、轻量级的、可移植的加密库,支持多种加密算法和协议。选择“wolfCrypt Only”意味着系统或应用将仅使用wolfCrypt库进行加密操作,而不依赖其他加密库。 2. DTLS Support 解释:DTLS(Datagram Transport Layer Security)是一种基于UDP的安全协议,提供类似于

【Python编程】Linux创建虚拟环境并配置与notebook相连接

1.创建 使用 venv 创建虚拟环境。例如,在当前目录下创建一个名为 myenv 的虚拟环境: python3 -m venv myenv 2.激活 激活虚拟环境使其成为当前终端会话的活动环境。运行: source myenv/bin/activate 3.与notebook连接 在虚拟环境中,使用 pip 安装 Jupyter 和 ipykernel: pip instal

【IPV6从入门到起飞】5-1 IPV6+Home Assistant(搭建基本环境)

【IPV6从入门到起飞】5-1 IPV6+Home Assistant #搭建基本环境 1 背景2 docker下载 hass3 创建容器4 浏览器访问 hass5 手机APP远程访问hass6 更多玩法 1 背景 既然电脑可以IPV6入站,手机流量可以访问IPV6网络的服务,为什么不在电脑搭建Home Assistant(hass),来控制你的设备呢?@智能家居 @万物互联

沁恒CH32在MounRiver Studio上环境配置以及使用详细教程

目录 1.  RISC-V简介 2.  CPU架构现状 3.  MounRiver Studio软件下载 4.  MounRiver Studio软件安装 5.  MounRiver Studio软件介绍 6.  创建工程 7.  编译代码 1.  RISC-V简介         RISC就是精简指令集计算机(Reduced Instruction SetCom

SpringMVC入参绑定特别注意

1.直接在controller中定义一个变量,但是此种传输方式有一个限制就是参数名和请求中的参数名必须保持一致,否则失效。 @RequestMapping("test2")@ResponseBodypublic DBHackResponse<UserInfoVo> test2(String id , String name){UserInfoVo userInfoVo = new UserInf

log4j2相关配置说明以及${sys:catalina.home}应用

${sys:catalina.home} 等价于 System.getProperty("catalina.home") 就是Tomcat的根目录:  C:\apache-tomcat-7.0.77 <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss} [%t] %-5p %c{1}:%L - %msg%n" /> 2017-08-10