Ich habe eine VPC mit einem privaten und einem öffentlichen Subnetz, die jeweils einen identisch gebauten RHEL7-Server enthalten. Ich glaube, die VPC ist korrekt eingerichtet (siehe unten). Der öffentliche Server kann jedoch yum verwenden und der private nicht. Der Private erhält den Fehler ...
$ yum search apache
Failed to set locale, defaulting to C
Loaded plugins: amazon-id, rhui-lb
Repo rhui-REGION-client-config-server-7 forced skip_if_unavailable=True due to: /etc/pki/rhui/cdn.redhat.com-chain.crt
Repo rhui-REGION-client-config-server-7 forced skip_if_unavailable=True due to: /etc/pki/rhui/product/rhui-client-config-server-7.crt
Repo rhui-REGION-client-config-server-7 forced skip_if_unavailable=True due to: /etc/pki/rhui/rhui-client-config-server-7.key
Repo rhui-REGION-rhel-server-releases forced skip_if_unavailable=True due to: /etc/pki/rhui/cdn.redhat.com-chain.crt
Repo rhui-REGION-rhel-server-releases forced skip_if_unavailable=True due to: /etc/pki/rhui/product/content-rhel7.crt
Repo rhui-REGION-rhel-server-releases forced skip_if_unavailable=True due to: /etc/pki/rhui/content-rhel7.key
Repo rhui-REGION-rhel-server-rh-common forced skip_if_unavailable=True due to: /etc/pki/rhui/cdn.redhat.com-chain.crt
Repo rhui-REGION-rhel-server-rh-common forced skip_if_unavailable=True due to: /etc/pki/rhui/product/content-rhel7.crt
Repo rhui-REGION-rhel-server-rh-common forced skip_if_unavailable=True due to: /etc/pki/rhui/content-rhel7.key
Could not contact CDS load balancer rhui2-cds01.us-east-1.aws.ce.redhat.com, trying others.
Could not contact any CDS load balancers: rhui2-cds01.us-east-1.aws.ce.redhat.com, rhui2-cds02.us-east-1.aws.ce.redhat.com.
Netzwerk
Ich habe eine AWS VPC mit RHEL7 AMIs.
- Ich habe eine VPC 10.0.0.0/16
- Ich habe ein öffentliches Subnetz 10.0.0.0/24
- Ich habe ein privates Subnetz 10.0.1.0/24
- Ich habe ein Internet-Gateway
- Ich habe ein NAT
Die Hauptroutentabelle zeigt auf das NAT
Destination Target Status Propagated 10.0.0.0/16 local Active No 0.0.0.0/0 eni-xxxxxxxx / i-xxxxxxxx Active No
Das private Subnetz ist der Hauptroutentabelle zugeordnet
Die zweite (nicht Haupt-) Routentabelle zeigt auf das Gateway
Destination Target Status Propagated 10.0.0.0/16 local Active No 0.0.0.0/0 igw-xxxxxxxx Active No
Das öffentliche Subnetz ist dieser Routentabelle zugeordnet
- Alle Sicherheitsgruppen sind für die Fehlerbehebung weit offen
Ich habe das NAT für die Weiterleitung aktiviert (und manchmal maskiert ... siehe unten)
sysctl -q -w net.ipv4.ip_forward=1 net.ipv4.conf.eth0.send_redirects=0 PRIVATE_SUBNETS="10.0.1.0/24" for SUBNET in $PRIVATE_SUBNETS; do iptables -t nat -C POSTROUTING -o eth0 -s $SUBNET -j MASQUERADE 2> /dev/null || iptables -t nat -A POSTROUTING -o eth0 -s $SUBNET -j MASQUERADE done
In den öffentlichen und privaten Subnetzen befindet sich ein Server
- Beide sind aus demselben RHEL7 AMI gefertigt.
Testen
- Ich bin Wurzel während all dem ...
- Ich habe die Einstellung versucht ,
sslverify=0
in/etc/yum.repos.d/redhat-rhui.repo
und/etc/yum.repos.d/redhat-rhui-client-config.repo
und dann die Ausführungyum clean all
. Das Problem wurde nicht gelöst. - Sowohl der Server im privaten als auch im öffentlichen Subnetz kann Ping 8.8.8.8
- Beide Server können Namen in IPs auflösen, einschließlich der Namen der yum-Repositorys.
Sowohl der private als auch der öffentliche Server scheinen die folgenden Drehzahlen sehen und berühren zu können:
$ rpm -Uvh ftp://ftp.pbone.net/mirror/ftp.sourceforge.net/pub/sourceforge/o/os/osolinux/update/RPMS.e/elinks-0.12-0.32.pre5mgc30.x86_64.rpm Retrieving ftp://ftp.pbone.net/mirror/ftp.sourceforge.net/pub/sourceforge/o/os/osolinux/update/RPMS.e/elinks-0.12-0.32.pre5mgc30.x86_64.rpm error: Failed dependencies: libgc.so.1()(64bit) is needed by elinks-0.12-0.32.pre5mgc30.x86_64 libgpm.so.2()(64bit) is needed by elinks-0.12-0.32.pre5mgc30.x86_64 libmozjs185.so.1.0()(64bit) is needed by elinks-0.12-0.32.pre5mgc30.x86_64 libnss_compat_ossl.so.0()(64bit) is needed by elinks-0.12-0.32.pre5mgc30.x86_64
Wenn ich versuche, ein neues Repository auf den privaten Server zu laden, wird eine Zeitüberschreitung angezeigt ...
$ rpm -Uvh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm
Retrieving http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm
curl: (7) Failed connect to pkgs.repoforge.org:80; Connection timed out
error: skipping http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm - transfer failed
- Das Ein- und Ausschalten der Maskierung scheint keinen Unterschied zu machen.
=== HIER FÜR DIE BILDUNG ANDERER VERÖFFENTLICHEN ===
Hallo Michael. Danke für den Kommentar.
Ich habe tatsächlich Traceroute verwendet und festgestellt, dass die Pakete vom betreffenden privaten Server zum NAT gelangen. Ich sah auch Pakete, die den Server verließen, was die weitergeleiteten Pakete gewesen sein sollten. Und das ist es. Nichts mehr.
Ich habe den Eindruck, dass die Anfragen von den Repositories abgelehnt werden, da Ping- und Internet-Remote-RPMs zu funktionieren scheinen ... aber ich weiß nicht warum. Ich erhalte das gleiche Ergebnis beim Ein- und Ausschalten der Maskierung.
Der NAT-Server wurde beim Erstellen der VPC automatisch erstellt. Die Sicherheitsgruppen wurden auf der Seite "Szenario 2" erstellt, sind jedoch derzeit weit geöffnet.
tshark
auf dem NAT-Computer? Oder erwägen Sie die Verwendung eines der offiziellen NAT-Instanz-Images (AMI), für das keine Anpassung erforderlich sein sollte.