Einige Websites sind mit dem Linux-Gateway nicht erreichbar

7

Wir haben ein LAN und eine Linux-Box wird als Internet-Gateway verwendet. Auf diesem Gateway haben wir den Intranet-Mailserver (sendmail), fetchmail, proxy und DNS installiert. An dieses Gateway ist eine Standleitung angeschlossen, und auf dieser Box ist die statische IP konfiguriert.

In den letzten 10 bis 15 Tagen wurde festgestellt, dass einige der Websites überhaupt nicht funktionieren. Wenn ich dieselbe Verbindung und IP-Adresse für einen eigenständigen Windows-PC konfiguriere, kann problemlos auf alle diese Websites zugegriffen werden.

Ich kann einige Websites nicht durchsuchen und nicht anpingen, aber ich kann Adressen mithilfe von nslookup auflösen.

Meine LAN-Konfiguration lautet wie folgt:

ifconfig:

enp2s0: flags=4419<UP,BROADCAST,RUNNING,PROMISC,MULTICAST>  mtu 1500
        inet 192.168.1.41  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::52e5:49ff:fe1b:daa8  prefixlen 64  scopeid 0x20<link>
        ether 00:00:00:00:00:00  txqueuelen 1000  (Ethernet)
        RX packets 67331121  bytes 8458827280 (7.8 GiB)
        RX errors 0  dropped 2138  overruns 0  frame 0
        TX packets 66307928  bytes 58607952676 (54.5 GiB)
        TX errors 0  dropped 0 overruns 0  carrier 1  collisions 0

enp4s1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet XX.XXX.XXXX.XX  netmask 255.0.0.0  broadcast 49.255.255.255
        ether 00:00:00:00:00:00  txqueuelen 1000  (Ethernet)
        RX packets 66015747  bytes 58276418282 (54.2 GiB)
        RX errors 0  dropped 100  overruns 0  frame 0
        TX packets 53457822  bytes 7049917031 (6.5 GiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

/etc/resolve.conf

nameserver 8.8.8.8
nameserver 192.168.1.41

iptables

# Generated by iptables-save v1.4.21 on Fri Aug 12 10:18:54 2016
*filter
:INPUT ACCEPT [6409479:525988637]
:FORWARD ACCEPT [26036553:16397355271]
:OUTPUT ACCEPT [6914932:970229461]
-A INPUT -i eth0 -j LOG --log-prefix "BANDWIDTH_IN:" --log-level 7
-A FORWARD -o eth0 -j LOG --log-prefix "BANDWIDTH_OUT:" --log-level 7
-A FORWARD -i eth0 -j LOG --log-prefix "BANDWIDTH_IN:" --log-level 7
-A OUTPUT -o eth0 -j LOG --log-prefix "BANDWIDTH_OUT:" --log-level 7
COMMIT
# Completed on Fri Aug 12 10:18:54 2016
# Generated by iptables-save v1.4.21 on Fri Aug 12 10:18:54 2016
*nat
:PREROUTING ACCEPT [1480942:133895346]
:INPUT ACCEPT [179896:21387703]
:OUTPUT ACCEPT [82634:5613521]
:POSTROUTING ACCEPT [231368:13257122]
-A PREROUTING -d XX.XXX.XXX.XX/32 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.1.250
-A POSTROUTING -s 192.168.1.132/32 -j MASQUERADE
-A POSTROUTING -s 192.168.1.127/32 -j MASQUERADE
-A POSTROUTING -s 192.168.1.188/32 -j MASQUERADE
-A POSTROUTING -s 192.168.1.199/32 -j MASQUERADE
-A POSTROUTING -s 192.168.1.20/32 -j MASQUERADE
-A POSTROUTING -s 192.168.1.181/32 -j MASQUERADE
-A POSTROUTING -s 192.168.1.233/32 -j MASQUERADE
-A POSTROUTING -s 192.168.1.77/32 -j MASQUERADE
-A POSTROUTING -s 192.168.1.134/32 -j MASQUERADE
-A POSTROUTING -s 192.168.1.113/32 -j MASQUERADE
-A POSTROUTING -s 192.168.1.19/32 -j MASQUERADE
-A POSTROUTING -s 192.168.1.20/32 -j MASQUERADE
-A POSTROUTING -s 192.168.1.197/32 -j MASQUERADE
-A POSTROUTING -s 192.168.1.198/32 -j MASQUERADE
-A POSTROUTING -s 192.168.1.9/32 -j MASQUERADE
-A POSTROUTING -s 192.168.1.5/32 -j MASQUERADE
-A POSTROUTING -s 192.168.1.119/32 -j MASQUERADE
-A POSTROUTING -s 192.168.1.1/32 -j MASQUERADE
-A POSTROUTING -s 192.168.1.98/32 -j MASQUERADE
-A POSTROUTING -s 192.168.1.182/32 -j MASQUERADE
-A POSTROUTING -s 192.168.1.40/32 -p tcp -m tcp --dport 21 -j MASQUERADE
-A POSTROUTING -s 192.168.1.134/32 -p tcp -m tcp --dport 21 -j MASQUERADE
-A POSTROUTING -s 192.168.1.181/32 -p tcp -m tcp --dport 21 -j MASQUERADE
-A POSTROUTING -s 192.168.1.181/32 -p tcp -m tcp --dport 21 -j MASQUERADE
-A POSTROUTING -s 192.168.1.98/32 -p tcp -m tcp --dport 21 -j MASQUERADE
-A POSTROUTING -s 192.168.1.177/32 -p tcp -m tcp --dport 443 -j MASQUERADE
-A POSTROUTING -s 192.168.1.89/32 -p tcp -m tcp --dport 443 -j MASQUERADE
-A POSTROUTING -s 192.168.1.129/32 -p tcp -m tcp --dport 21 -j MASQUERADE
-A POSTROUTING -s 192.168.1.66/32 -j MASQUERADE
-A POSTROUTING -s 192.168.1.250/32 -j MASQUERADE
COMMIT
# Completed on Fri Aug 12 10:18:54 2016
# Generated by iptables-save v1.4.21 on Fri Aug 12 10:18:54 2016
*mangle
:PREROUTING ACCEPT [33387672:17017857834]
:INPUT ACCEPT [6409479:525988637]
:FORWARD ACCEPT [26036554:16397355355]
:OUTPUT ACCEPT [6914932:970229461]
:POSTROUTING ACCEPT [32955572:17367734827]
COMMIT
# Completed on Fri Aug 12 10:18:54 2016

Wie soll ich herausfinden, was diese Verbindungen blockiert? Was soll ich sonst noch in der Linux-Box ankreuzen? Kann jemand einen Hinweis geben, um das Problem zu beheben? Was sollte ich hier noch erwähnen? Danke im Voraus.

Silkograph
quelle
Wenn die folgende Antwort für zukünftige Leser nicht zutrifft, möchten Sie möglicherweise überprüfen, ob Ihre MTU korrekt ist. Ich hatte ein ähnliches Problem mit einer zu großen MTU auf einem PPPoE-Link, und einige Websites funktionierten einwandfrei (Google), während andere ständig eine Zeitüberschreitung aufwiesen. Durch Absenken der MTU wurde das Problem behoben.
André Borie

Antworten:

20

Die Netzmaske ist auf der WAN-Schnittstelle (enp4s1) falsch.

Dieses System hat eine IP-Adresse von 49.xxx und eine Netzmaske von 255.0.0.0 (Präfix / 8) konfiguriert. Dies ist jedoch nicht die Netzmaske, die Ihnen Ihr ISP gegeben hat.

Infolgedessen können Sie nicht auf fast alle Websites zugreifen, deren IP-Adressen ebenfalls mit 49 beginnen.

Um das Problem zu beheben, beheben Sie die Netzmaske oder Präfixdeklaration in Ihrer Netzwerkkonfiguration. Ich würde erwarten, dass das richtige Präfix je nach ISP in der Nähe von 27, 28 oder 29 liegt.

Michael Hampton
quelle
Großartig, du hast mein Leben gerettet. Ich wusste nicht, was PREFIX0 in der Konfigurationsdatei der Netzwerkkarte bedeutet. Diese Zeile wurde von mir unwissentlich kommentiert. Nachdem ich Ihre Antwort gelesen hatte, versuchte ich, NETMASK mit 255.255.255.0 in config zu ändern. Ich konnte keine Änderung mit der Zeile NETMASK = 255.255.255.0 sehen. Ich musste die Zeile PREFIX0 = 24 auskommentieren. Ich mache das in CENT OS 7. Können wir NETMASK mit der NETMASK-Einstellung in CENT OS 7 einstellen? Muss ich die NETMASK-Einstellung des Dienstanbieters kennen, wenn die PREFIX0-Einstellung für mich funktioniert?
Silkograph
1
Sie sollten wirklich die richtige Netzmaske verwenden, die von Ihrem ISP zugewiesen wurde, da Sie sonst das Problem nur verringern oder überkorrigieren. Sie können vorübergehend versuchen, DHCP zu verwenden, um festzustellen, ob der WAN-Schnittstelle automatisch eine Adresse und eine Netzmaske zugewiesen werden, und diese Nummern verwenden. Es gibt jedoch keine Garantie dafür, dass ein DHCP-Server vorhanden ist.
GuitarPicker
@Silkograph Sie können entweder NETMASKoder PREFIXin einstellen /etc/sysconfig/network-scripts/ifcfg-enp4s1. Die Verwendung PREFIXwird jedoch bevorzugt. Ihr ISP sollte Ihnen das richtige Präfix gegeben haben. Wenn Sie das falsche Präfix / die falsche Netzmaske verwenden, gibt es einfach eine kleinere Anzahl von Websites, auf die Sie nicht zugreifen können.
Michael Hampton