图片中的普通网络拓扑:
换句话说:
- “服务器”(例如:Ubuntu 10.04 LTS)通过 pppoe 连接连接到“互联网”
- “服务器”在 AP 模式下使用其无线网卡,因此它可以共享通过无线到客户端的互联网连接(WPA2/AES/63 字符通行证)
- “服务器”有两个以太网端口: 1-用于互联网(使用 pppoe); 2-连接到千兆位交换机,客户端也已连接
- “服务器”(10.0.0.1) 有一个 dhcp 服务器 (10.0.0.0/8),因此客户端自动获取 IP 地址、DNS 服务器地址和网关地址
- “服务器”有一个 dns 服务器(10.0.0.1),因此 dns 查询会被缓存,(更好的“网络速度感觉”)
- 额外:在“服务器”上,有一个 OpenVPN 服务器,因此客户端可以OpenVPN 到服务器(即使不在子网中,例如:从网吧)
- ExtraExtra:“服务器”可以配置为两种模式: 1-仅在通过 OpenVPN 连接后,不向任何客户端转发互联网; 2-互联网转发到任何客户端,并且他们可以选择使用 OpenVPN 来拥有安全/经过身份验证的隧道
问题:我需要如何配置“服务器”才能完成这项工作(永久地,我的意思是服务器重新启动后不需要手动交互,例如:dhcp服务器自动启动,互联网转发正常,openvpn已启动,wifi正在工作,pppoe与 ISP 的连接已建立,DNS 服务器正在工作)?
或者有人有关于此设置的任何具体操作方法吗?或者至少是其中的一部分?
答案1
Gentoo Linux 的 Gentoo Linux 文档中有一个非常好的家庭路由器指南:http://www.gentoo.org/doc/en/home-router-howto.xml
许多步骤都可以调整以与 Ubuntu 一起使用。
答案2
注意:这是来自我自己的非常小的家庭网络,我不是网络专家。我不太明白它为什么有效,如果出现更好的帖子,我会很快删除这篇文章。以防万一需要一些时间,这可能是一个开始,但没有任何有关 VPN 的内容。
我不确定我是否知道你所知道的以及你正在寻找的东西。
我认为您已经建立了 pppoe 连接、dns 服务器、dhcp 并正在运行。
您只需要知道如何进行转发和 VPN 之类的事情?我不知道VPN。
连接pppoe后,在init-process或network-ifup中启动它:
#!/bin/bash
# test if ip-forward is up - if not, enable it:
#
ipf=$(cat /proc/sys/net/ipv4/ip_forward)
if [[ ipf -eq "0" ]] ; then
echo "1" > /proc/sys/net/ipv4/ip_forward
fi
#
# forward-masquerade
#
. /etc/ppp/masquerade
#
# start dhcp-server now
可能/etc/ppp/masquerade
看起来像这样:
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
#
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp
#
iptables -A FORWARD -p tcp --tcp-flags SYN,RST, SYN -j TCPMSS --clamp-mss-to-pmtu
如果客户端将服务器指定为默认网关,那么他们现在应该可以访问网络。
IPv4 转发也可以通过编辑来启用/etc/sysctl.conf
,并且经过测试,这是永久设置的更好主意。
从我文件中的评论来看/etc/sysctl.conf
,我猜您可以从那里控制所有内容,但不要问我如何控制。 :)
答案3
答案4
你可以随时查看著名的 Arch Wiki: