Просто быстрый вопрос (надеюсь), чтобы узнать, возможно ли то, что я пытаюсь сделать. Я пытаюсь предоставить общий доступ к интернет-соединению с Fedora12 в качестве шлюза по умолчанию и компьютером XP, подключенным через сетевую карту, используя команды iptables, как показано в книге Марка Собелла «Практическое руководство по Fedora и Red Hat Enterprise Linux». Это команды, размещенные в /etc/rc.local
iptables -A FORWARD -i eth1 -o eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT
iptables -A FORWARD -j LOG
iptables -t NAT -A POSTROUTING -o eth1 -j MASQUERADE
Я переставил входные и выходные параметры, чтобы они соответствовали моей конфигурации сетевой карты (в отличие от примера из книги), но в остальном следовал примеру. Стоит отметить, что Собелл не упомянул, должно ли это работать с Linux и XP. Еще одно замечание (возможно, бессмысленное) заключается в том, что у меня есть Samba, работающая между двумя машинами. Спасибо за любые идеи, которые могут быть у кого-либо. PL
решение1
Это будет работать.
Сначала. Убедитесь, что ваш ip_forwarding включен. По умолчанию он отключен в большинстве систем Linux. Запустите это: Использование sysctl
sysctl net.ipv4.ip_forward net.ipv4.ip_forward = 0
или используя значение в/проц
cat /proc/sys/net/ipv4/ip_forward
0
Включить ip_forward навсегда
Добавлятьnet.ipv4.ip_forward = 1линия в/etc/sysctl.conf
cat "net.ipv4.ip_forward > /etc/sysctl.conf
sysctl -p /etc/sysctl.conf
service network restart
Вам необходимо убедиться, что вы идентифицируете исходящие и входящие сетевые интерфейсы.
Это может быть полезно: http://www.howtoforge.com/nat_iptables
решение2
В дополнение к ответу @PSS, вы хотите сделать следующее, поскольку вы используете систему на базе Fedora
- После того, как все заработает, вы захотите использовать команду
service iptables save
, чтобы сделать настройки iptables постоянными. - Измените файл
/etc/sysctl.conf
и установитеnet.ipv4.ip_forward = 1
там значение, опять же по той же причине.
Если вы используете ядро по умолчанию (или предоставленное обновлениями), убедитесь, что соответствующие модули ядра загружены modprobe iptable_nat
и ipt_MASQUERADE
- /etc/init.d/iptables
скрипт, запускающий «службу» iptables, также должен загружать модули, так что вы можете попробовать сделать service iptables start
то же самое.