Erstens weiß ich, dass IP nicht so beabsichtigt ist. Aber wie immer muss es so funktionieren.
Ich arbeite für eine Sicherheitsfirma. Es gibt mindestens 2 Netzwerkschnittstellen. Beide Schnittstellen sollten ein Standard-Gateway haben. Eine Schnittstelle ist eine Standard-Ethernet-Schnittstelle, die zweite ist eine 3g-Schnittstelle. Beide verbinden sich mit dem Internet. Verschiedene Konfigurationen sind möglich, da in einer Schnittstelle die Haupt- und die andere die Sicherung ist. Oder die Ethernet-Schnittstelle ist ein lokales LAN (mit verschiedenen Subnetzen, Gateway) und das 3G-Modem ist die Internetverbindung.
Meine Hauptfrage ist, wie ich den Linux-TCP / IP-Stack dazu bringen kann, auf derselben Schnittstelle zu antworten, von der eine Anfrage kam.
Die zweite Frage: Wie kann ich eine Verbindung über die Schnittstelle meiner Wahl herstellen, ohne mit verschiedenen Subnetzen auf verschiedenen Schnittstellen zu spielen?
quelle
ip
Manpage für eine vollständige Referenz.Ich bin mir nicht sicher, ob dies in dem von Ihnen gewünschten allgemeinen Sinne möglich ist. Sie können sicher steuern, welche Netzwerkschnittstelle ein auf Ihrem Computer ausgeführtes Programm verwendet, indem Sie es an eine bestimmte Adresse binden.
Im Allgemeinen glaube ich jedoch nicht, dass es eine Möglichkeit gibt, eingehende Netzwerkpakete mit ausgehenden Paketen zu verbinden. Das Beste, was Sie tun können, ist, dem System Anweisungen zu geben, die lauten: "Wenn Sie versuchen, eine Verbindung zu diesem Netzwerk herzustellen, verwenden Sie immer diese Schnittstelle." Dies kann auf verschiedene Arten über die Systemrouting-Tabelle (
iproute
) oder mitiptables
Firewall-Regeln erfolgen.Wenn dies aus Sicherheitsgründen geschieht, haben Sie darüber nachgedacht, virtuelle Maschinen zu verwenden, die auf Ihrem physischen Server ausgeführt werden? Sie können eine VM so konfigurieren, dass nur auf eine Schnittstelle zugegriffen wird, und eine andere VM nur auf die andere. Da die VM die andere Schnittstelle überhaupt nicht sehen kann, kann sie niemals auf Pakete aus dem falschen Netzwerk reagieren.
Sie sollten sich wahrscheinlich auch diese Serverfehlerfrage ansehen, in der beschrieben wird, wie Sie steuern können, auf welchen Schnittstellen-Arp-Anforderungen ausgeführt werden. Sie sollten sich auch den rp_filter sysctl ansehen, der so eingestellt werden kann, dass Pakete ignoriert werden, die auf der falschen Schnittstelle angezeigt werden.
quelle