diff --git a/README-zh.md b/README-zh.md
index 595a9d4..22a177c 100644
--- a/README-zh.md
+++ b/README-zh.md
@@ -9,6 +9,19 @@
#### 详细的 VPN 教程请参见我的博客文章
+## 目录
+
+- [功能特性](#功能特性)
+- [系统要求](#系统要求)
+- [安装说明](#安装说明)
+ - [Ubuntu & Debian](#ubuntu--debian)
+ - [CentOS & RHEL](#centos--rhel)
+- [下一步](#下一步)
+- [重要提示](#重要提示)
+- [关于升级Libreswan](#关于升级libreswan)
+- [问题和反馈](#问题和反馈)
+- [授权协议](#授权协议)
+
## 功能特性
- 全自动的 IPsec/L2TP VPN 服务器配置,无需用户输入
@@ -49,7 +62,7 @@ OpenVZ VPS 用户请使用其它的 VPN 软件,比如 vpnsetup.sh (或者 vpnsetup_centos.sh),然后点击右方的 **`Raw`** 按钮。按快捷键 `Ctrl-A` 全选, `Ctrl-C` 复制,然后粘贴到你喜欢的编辑器。
+## 下一步
+
+配置你的计算机或其它设备使用 VPN 。请参见: 配置 IPsec/L2TP VPN 客户端。
+
+开始使用自己的专属 VPN ! :sparkles::tada::rocket::sparkles:
+
## 重要提示
**Windows 用户** 在首次连接之前需要修改一次注册表,以解决 VPN 服务器和客户端与 NAT (比如家用路由器)的兼容问题。另外如果遇到`Error 628`,请打开 VPN 连接属性的"安全"选项卡,启用 `CHAP` 选项并禁用 `MS-CHAP v2`。
@@ -79,16 +98,10 @@ sudo sh vpnsetup_centos.sh
在 VPN 已连接时,客户端配置为使用 Google Public DNS。此设置可在 `options.xl2tpd` 文件的 `ms-dns` 项更改。
-如果服务器配置了自定义 SSH 端口(不是 22)或其他服务,请在运行脚本前编辑 IPTables 防火墙规则。
+如果服务器配置了自定义 SSH 端口(不是 22)或其他服务,请在运行脚本前编辑 IPTables 防火墙规则。
这些脚本在更改现有的配置文件之前会先做备份,使用 `.old-日期-时间` 为文件名后缀。
-## 下一步
-
-配置你的计算机或其它设备使用 VPN 。请参见: 配置 IPsec/L2TP VPN 客户端。
-
-开始使用自己的专属 VPN ! :sparkles::tada::rocket::sparkles:
-
## 关于升级Libreswan
提供两个额外的脚本 vpnupgrade_Libreswan.sh 和 vpnupgrade_Libreswan_centos.sh ,可用于将已安装的 Libreswan 不定期升级至最新版本。请关注官方网站,并在运行前根据需要更新 `SWAN_VER` 变量。
diff --git a/README.md b/README.md
index c21139c..bc9ccf5 100644
--- a/README.md
+++ b/README.md
@@ -8,6 +8,20 @@ We will use Libreswan as th
#### Link to my VPN tutorial with detailed instructions
+## Table of Contents
+
+- [Features](#features)
+- [Requirements](#requirements)
+- [Installation](#installation)
+ - [Ubuntu & Debian](#ubuntu--debian)
+ - [CentOS & RHEL](#centos--rhel)
+- [Next Steps](#next-steps)
+- [Important Notes](#important-notes)
+- [Upgrading Libreswan](#upgrading-libreswan)
+- [Bugs & Questions](#bugs--questions)
+- [Author](#author)
+- [License](#license)
+
## Features
- Fully automated IPsec/L2TP VPN server setup, no user input needed
@@ -48,7 +62,7 @@ First, update your system with `apt-get update && apt-get dist-upgrade` and rebo
```bash
wget https://git.io/vpnsetup -O vpnsetup.sh
nano -w vpnsetup.sh
-[Edit and replace IPSEC_PSK, VPN_USER and VPN_PASSWORD with your own values]
+[Replace with your own values: IPSEC_PSK, VPN_USER and VPN_PASSWORD]
sudo sh vpnsetup.sh
```
@@ -60,12 +74,18 @@ First, update your system with `yum update` and reboot. This is optional, but re
yum -y install wget nano
wget https://git.io/vpnsetup-centos -O vpnsetup_centos.sh
nano -w vpnsetup_centos.sh
-[Edit and replace IPSEC_PSK, VPN_USER and VPN_PASSWORD with your own values]
+[Replace with your own values: IPSEC_PSK, VPN_USER and VPN_PASSWORD]
sudo sh vpnsetup_centos.sh
```
If unable to download via `wget`, you may alternatively open vpnsetup.sh (or vpnsetup_centos.sh) and click the **`Raw`** button. Press `Ctrl-A` to select all, `Ctrl-C` to copy, then paste into your favorite editor.
+## Next Steps
+
+Get your computer or device to use the VPN. Please see: Configure IPsec/L2TP VPN Clients.
+
+Enjoy your very own VPN! :sparkles::tada::rocket::sparkles:
+
## Important Notes
For **Windows users**, a one-time registry change is required if the VPN server and/or client is behind NAT (e.g. home router). In case you see `Error 628`, go to the "Security" tab of VPN connection properties, enable `CHAP` and disable `MS-CHAP v2`.
@@ -78,16 +98,10 @@ To enable multiple VPN users with different credentials, just Google Public DNS when the VPN is active. To change, set `ms-dns` in `options.xl2tpd`.
-For servers with a custom SSH port (not 22) or other services, edit the IPTables rules before using.
+For servers with a custom SSH port (not 22) or other services, edit the IPTables rules before using.
The scripts will backup existing config files before making changes, with `.old-date-time` suffix.
-## Next Steps
-
-Get your computer or device to use the VPN. Please see: Configure IPsec/L2TP VPN Clients.
-
-Enjoy your very own VPN! :sparkles::tada::rocket::sparkles:
-
## Upgrading Libreswan
The additional scripts vpnupgrade_Libreswan.sh and vpnupgrade_Libreswan_centos.sh can be used to periodically upgrade Libreswan to the latest version. Check the official website and update the `SWAN_VER` variable as necessary.