<commit_before># L2TP script

Recently I set up a L2TP/IPsec VPN on my Arch Linux machine and there were so many different config files to keep track of with IP addresses, user names, passwords, etc. scattered through them. There's no way I was going to remember how to set all that up and guides I used might go offline so... I wrote a script to do it for me next time.

## Requirements

* openswan
* xl2tpd

I wrote this for my Arch Linux machine so the script uses systemd to start these services and writes config files to where Arch keeps them.
<commit_msg>Copied usage into the readme<commit_after># L2TP script

Recently I set up a L2TP/IPsec VPN on my Arch Linux machine and there were so many different config files to keep track of with IP addresses, user names, passwords, etc. scattered through them. There's no way I was going to remember how to set all that up and guides I used might go offline so... I wrote a script to do it for me next time.

## Usage

Set the following environment variables to match the L2TP/IPSec VPN that you're connecting to.

`TARGET_IP_RANGE` means a CIDR notation of the destination IP range you wish to route through the VPN tunnel.
The rest should be self explanatory.

You can also put these in another file and pass that as an argument.

* L2TP_SERVER_IP
* L2TP_USER_NAME
* L2TP_PASSWORD
* IPSEC_PRE_SHARED_KEY
* TARGET_IP_RANGE

## Requirements

* openswan
* xl2tpd

I wrote this for my Arch Linux machine so the script uses systemd to start these services and writes config files to where Arch keeps them.

{'fraction_non_alphanumeric': 0.03536977491961415, 'fraction_numerical': 0.006430868167202572, 'mean_word_length': 4.068403908794788, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '580025', 'n_tokens_mistral': 438, 'n_tokens_neox': 422, 'n_words': 260}