1

Я прочитал много других сообщений, но не могу понять это.

eth0 мой внешний подключенный к модему Comcast. На сервере есть доступ в интернет без проблем.

eth1 является внутренним и работает DHCP для клиентов. У меня DHCP работает нормально, все мои клиенты могут получить IP и пинговать сервер, но они не могут получить доступ к Интернету.

Я использую ISC-DHCP-SERVER и установил /etc/default/isc-dhcp-server в INTERFACE = "eht1"

Вот мой файл dhcpd.conf, расположенный в /etc/dhcp/dhcpd.conf

ddns-update-style interim;
ignore client-updates;

subnet 10.0.10.0 netmask 255.255.255.0 {
range 10.0.10.10 10.0.10.200;
option routers 10.0.10.2;
option subnet-mask 255.255.255.0;
option domain-name-servers 208.67.222.222, 208.67.220.220; #OpenDNS
#   option domain-name "example.com";
default-lease-time 21600;
max-lease-time 43200;

    authoritative;
}

Я сделал изменение net.ipv4.ip_forward = 1 в /etc/sysctl.conf

вот мой файл интерфейсов:

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp

iface eth1 inet static
address 10.0.10.2
netmask 255.255.255.0
network 10.0.10.0

auto eth1

И, наконец, вот мой файл iptables.conf :

# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*nat
:PREROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 10.0.10.0/24 -o eth0 -j MASQUERADE
#-A PREROUTING -i eth0 -p tcp --dport 59668 -j DNAT --to-destination 10.0.10.2:59668
COMMIT
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -i eth1 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 53 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 53 -j ACCEPT
-A FORWARD -s 10.0.10.0/24 -o eth0 -j ACCEPT
-A FORWARD -d 10.0.10.0/24 -m state --state ESTABLISHED,RELATED -i eth0 -j ACCEPT
-A FORWARD -p icmp -j ACCEPT
-A FORWARD -i lo -j ACCEPT
-A FORWARD -i eth1 -j ACCEPT
#-A FORWARD -i eth0 -m state --state NEW -m tcp -p tcp -d 10.0.10.2 --dport 59668 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

Я полностью застрял. Я не могу понять, почему клиенты не могут получить доступ к Интернету. Я пропускаю услугу? Служба не работает? Любая помощь будет принята с благодарностью. Я старался быть максимально тщательным, но, пожалуйста, дайте мне знать, если я что-то пропустил. Спасибо!

1 ответ1

1

Проблема заключается в моих iptables, хотя я не уверен, где. Чистый зачистка позволила мне стать джентльменом на форумах по Ubuntu.

iptables --flush
iptables --table nat --flush
iptables --delete-chain
#
#
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m conntrack --ctstate NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -A FORWARD -i eth1 -j ACCEPT

Я надеюсь, что это помогает другим! Теперь я должен добавить каждое правило по одному снова. Спасибо всем за помощь.

Кроме того, вы должны сохранить iptables iptables-save> /somewhere/iptables.conf (или какое-нибудь имя файла), а затем добавить предварительный iptables-restore </somewhere/iptables.conf (или любой другой) в папке eth0 в /etc /network / интерфейсы. Это позволит убедиться, что список правил загружен до того, как активен ник. Обязательно сохраните заново, когда внесете изменения в iptables.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .