# 校园内网联网
# 哆点连接校园网
# 啰嗦的介绍
首先你需要有一个校园网账号。
可以参考https://github.com/hisaner/Drcom-Padavan (opens new window),使用curl发送POST请求来登录校园网。
也可以参考https://github.com/mchome/dogcom (opens new window),编译一份登录程序,然后修改配置文件以适配你自己的学校校园网。
# 直接食用
- 我已经编译好了一份可执行的登录程序,下载 (opens new window)
- 将下载的
drcom.tar.bz2上传到服务器解压,如解压到家目录tar xjvf drcom.tar.bz2 -C $HOME。(如果不知道如何上传,见《15-PC和服务器间进行文件传输》) - 注意解压后得到的文件夹为
.drcom,是一个隐藏文件夹,执行ls -a查看到该文件夹。这是为了考虑隐私问题,防止账号密码被其他人查看,因此你甚至还可以对.drcom文件夹设置仅自己账户可读写执行权限:chmod 700 -R .drcom - 先修改
drcom.conf中的账户和密码,然后赋予dogcom、dr.sh可执行权限(chmod u+x dogcom、chmod u+x dr.sh),最后运行./dr.sh。 - 你可能需要再开一个窗口完成其他任务,或者ctrl+C直接终端此次联网。
综上,即:
tar xjvf drcom.tar.bz2 -C $HOME
chmod 700 -R .drcom
cd $HOME/.drcom
chmod u+x dogcom
chmod u+x dr.sh
vi drcom.conf # 修改账户和密码
./dr.sh
# 连接PPTP协议VPN(限管理员操作)
首先你需要有一个vpn账号。
若为Debian系列:
sudo apt install pptp-linux
sudo apt install route
sudo apt install net-tools
sudo apt install curl
sudo pptpsetup --create [vpn_name] --server [vpn_ip] --username [vpn_usrname] --password [vpn_passwd] --encrypt
sudo pon [vpn_name] updetach persist
sudo route add default dev ppp0
curl -i www.baidu.com
如果是archlinux
sudo pacman -S pptpclient,curl
sudo pptpsetup --create [vpn_name] --server [vpn_ip] --username [vpn_usrname] --password [vpn_passwd] --encrypt
sudo pon [vpn_name] updetach persist
sudo ip route add default dev ppp0 #1)可能已经存在默认路由,可以ip route del default 删除原先的默认路由。
curl -i www.baidu.com
以后每次连接vpn:
sudo pon [vpn_name] updetach persist
sudo ip route add default dev ppp0
curl -i www.baidu.com
关闭vpn连接:
sudo poff [vpn_name]
# 下面的操作看情况使用,在archlinux上跳过如下,直接systemctl restart systemd-networkd
ip route del default dev ppp0
ip route add default gw <网关> <网卡设备名> # or ip route add default via <网关>
修改vpn密码,vim /etc/ppp/chap-secrets ,见https://www.codenong.com/js078ac704c92c/ (opens new window)
vpn的删除:
# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 10.xx.101.1 0.0.0.0 UG 0 0 0 enp8s0f1
10.xx.101.0 0.0.0.0 255.255.255.0 U 0 0 0 enp8s0f1
172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0
xx.1x8.1x6.xx 10.xx6.101.1 255.255.255.255 UGH 0 0 0 enp8s0f1
route del -net xx.1x8.1x6.xx netmask 255.255.255.255
pptpsetup --delete [vpn_label]