我有一種情況,其中有一臺服務器機兩個接口上配置多個接口。每個接口都有自己的IP地址。服務器機器託管一個HTTP服務器,它應該可以通過這兩個接口訪問。(mininet的主機)
完全python腳本重現這種情況:
from mininet.cli import CLI
from mininet.log import setLogLevel
from mininet.net import Mininet
from mininet.topo import Topo
class TestTopology(Topo):
def __init__(self):
Topo.__init__(self)
host1_id = self.addHost('h1')
host2_id = self.addHost('h2')
server_id = self.addHost('server')
self.addLink(server_id, host1_id)
self.addLink(server_id, host2_id)
def configure_network(network):
server = network.get('server')
server.setIP('10.0.0.10', intf='server-eth0')
server.setMAC('00:00:00:00:00:10', intf='server-eth0')
server.setIP('10.0.0.11', intf='server-eth1')
server.setMAC('00:00:00:00:00:11', intf='server-eth1')
server.cmd("python -m SimpleHTTPServer 8080 &")
# Run 'sudo python *path_to_this_script*' in mininet VM.
if __name__ == '__main__':
setLogLevel('info')
net = Mininet(topo=TestTopology())
configure_network(net)
net.pingAll()
CLI(net)
的SimpleHTTPServer正在偵聽0.0.0.0爲默認值。
的「pingAll」測試表明,該服務器是H1(反之亦然)訪問,但它不是爲H2的情況。 當然,我不能wget
從H2兩種。
如何配置服務器接口,以便服務器通過這兩個接口同時響應ping
和wget
命令?
/etc/network/interfaces
在服務器上包含一些配置,但它是關於一個不存在的eth0
接口,所以我認爲它沒有被使用。
注:我已經瞭解到,對於Linux,特別是IP =網絡接口!服務器從h1響應ping到10.0.0.10和10.0.0.11,但我希望它在兩個物理接口上都響應。