红联Linux门户
Linux帮助

在Linux(Fedora 7)下实现共享上网

发布时间:2007-09-16 21:08:50来源:红联作者:Agreed
作者:李先静

我的桌面机有两个网卡,一个连接天威的MODEN,一个连接笔记本电脑。笔记本电脑和桌面机之间共享数据没有问题,但笔记本电脑有时也要访问外网,怎么办呢?以前在桌面机上安装的Windows,要共享上网非常简单,把网络连接设置为共享就行了。现在安装了Fedora 7,按常规来看,实现共享上网更简单才对,只要打开TCP转发(forward)开关即可。

在配置文件中/etc/sysctl.conf增加net.ipv4.ip_forward = 1,重起之后,/proc/sys/net/ipv4/ip_forward的内容变为1了,但还是无法实现共享上网。

后来找到一个脚本,运行一下就可以了,非常好用,摘录到这里做备忘。

#!/bin/sh
INTIF="eth0"
EXTIF="eth1"
EXTIP="`/sbin/ifconfig eth1 | grep 'inet addr' | awk '{print $2}' | sed -e 's/.*://'`"

/sbin/depmod -a
/sbin/modprobe ip_tables
/sbin/modprobe ip_conntrack
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_conntrack_irc
/sbin/modprobe iptable_nat
/sbin/modprobe ip_nat_ftp

echo "1" > /proc/sys/net/ipv4/ip_forward
echo "1" > /proc/sys/net/ipv4/ip_dynaddr
iptables -P INPUT ACCEPT
iptables -F INPUT
iptables -P OUTPUT ACCEPT
iptables -F OUTPUT
iptables -P FORWARD DROP
iptables -F FORWARD
iptables -t nat -F
iptables -A FORWARD -i $EXTIF -o $INTIF -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i $INTIF -o $EXTIF -j ACCEPT
iptables -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE

~~end~~
文章评论

共有 1 条评论

  1. jactive 于 2007-12-16 10:13:48发表:

    赞一个5:ty( 十分方便,顺便说一下
    eth0 是连接内网的网卡
    eth1是连接外网的网卡