0

我正在尝试在我的 Ubuntu 12.04 上设置 Squid 代理服务器。有很多关于这方面的教程,我会一一学习,直到成功。

在每个教程中,他们都要求发出如下命令:

modprobe ip_gre
ip tunnel add wccp0 mode gre remote 187.72.34.82 local 192.168.1.2 dev eth0
ifconfig wccp0 192.168.1.2 netmask 255.255.255.255 up
echo 0>/proc/sys/net/ipv4/conf/wccp0/rp_filter
echo 0>/proc/sys/net/ipv4/conf/eth0/rp_filter
echo 1>/proc/sys/net/ipv4/ip_forward
iptables -t nat -A PREROUTING -i wccp0 -p tcp --dport 80 -j REDIRECT --to-port 3129
iptables -t nat -A POSTROUTING -j MASQUERADE

如果该特定教程不起作用,我必须将这些(无效)更改恢复为默认值。我的问题是:

  1. 这些命令是否应该通过终端发出?
  2. 如果我只是重新启动机器,这些更改会消失吗?
  3. 如果没有,我该怎么做才能将它们重置为默认值?
  4. 如果我发现一些命令对我有用(并且如果这些更改在每次重新启动后消失),我如何在每次重新启动后自动应用它们?

请注意,我是一个完整的初学者,有 1 天的 Linux 经验。

4

2 回答 2

0
  1. 是的,或通过脚本(见下文 4)
  2. 是的
  3. (没有答案,因为 2. 是的)
  4. 将它们写入脚本并在启动时运行(可能从/etc/rc.local
于 2013-09-08T11:14:57.330 回答
-2

当您有下面的行时,这意味着您正在 /proc/sys/net/ipv4/conf/wccp0/ rp_filter文件中写入值 0。

Linux 将所有配置存储在文件中,而 Windows 将它们存储在注册表 ( regedit ) 中。

正如我们的伙伴之前告诉你的,你可以简单地将它们写在一个脚本文件中,然后根据你使用的发行版在 /etc/rc.local 中添加一个调用。

如果您应用这些命令并且没有按预期工作,则只需找出正确的文件并删除更改即可。

我个人建议您备份以下文件:

cp /proc/sys/net/ipv4/conf/wccp0/rp_filter /home/user
cp /proc/sys/net/ipv4/conf/eth0/rp_filter /home/user
cp /proc/sys/net/ipv4/ip_forward /home/user

如果您只在 iptables 中配置了一条规则,则可以运行以下命令:

iptables -F

上面的命令将清除 iptables 中所做的所有配置,确保您知道自己在做什么。

关于这一点,您可以简单地通过向下更改

ifconfig wccp0 192.168.1.2 netmask 255.255.255.255 up

ifconfig wccp0 192.168.1.2 netmask 255.255.255.255 down

modprobe 命令没有太大变化,因为它只是加载模块ip_gre

modprobe ip_gre

最后一个,用del改变add

ip tunnel add wccp0 mode gre remote 187.72.34.82 local 192.168.1.2 dev eth0

ip tunnel del wccp0 mode gre remote 187.72.34.82 local 192.168.1.2 dev eth0

希望这些信息对您有所帮助!

于 2013-09-08T11:37:32.983 回答