#midonet

/

      • agabert
        its port2 for you
      • you want to bind the 192.168.254.254 port to veth1
      • it works like this:
      • the fakeuplink bridge has veth0 enslaved
      • imagine a crossover shielded twisted pair cable going between veth0 and veth1
      • aliemieshko
        host host0 add binding port router router1 port port2 interface veth1 ?
      • agabert
        like a real oldschool cable
      • port2 is what you want to click into veth
      • veth1
      • so traffic from port2 goes into veth1
      • goes into crossover cable
      • comes out fakeuplink slave port veth0
      • goes to fakeuplink bridge
      • linux kernel does the rest
      • its ugly but it works
      • if you dont have a spare nic
      • aliemieshko
        midonet> host host0 add binding port router router1 port port2 interface veth1
      • Internal error: {"message":"Validation error(s) found","code":400,"violations":[{"message":"Interface is already bound to a port.","property":""}]}
      • agabert
        run host host0 binding list
      • aliemieshko
        midonet> host host0 binding list
      • host host0 interface veth1 port router0:port1
      • host host0 interface tap2e9313fd-d5 port bridge0:port1
      • agabert
        what is router0
      • is it internal router or provider router?
      • aliemieshko
        internal
      • agabert
        that is wrong
      • aliemieshko
        midonet> router list
      • router router0 name router state up infilter chain0 outfilter chain1
      • router router1 name MidoNet Provider Router state up
      • agabert
        we are talking about binding the port of the provider router to veth1
      • aliemieshko
        how can i change it ?
      • abikfalvi joined the channel
      • agabert
        if you want to bind the internal router you must not use the same network on both sides of the world
      • you are in the overlay world
      • and you are in the physical world
      • and on both sides you use 192.168.254/24
      • this will never work
      • you have to remove the binding
      • and bind the provider router port to veth1
      • aliemieshko
        how can i do is ?
      • agabert
        host host0 delete binding and then press <TAB> a lot
      • it has a sort-of autocomplete help
      • aliemieshko
        midonet> host host0 delete binding
      • host interface port
      • agabert
        i think its host host0 delete binding port
      • but i dont know for sure, i never did it in the cli
      • just try different commands, it cannot break
      • aliemieshko
        midonet> host host0 delete binding port
      • Syntax error at: ...binding port
      • agabert
        look
      • the midonet cli syntax is special
      • you have to understand the concept of scoping and aliases
      • have you worked with a router cli before?
      • jfjoly joined the channel
      • it pretends to be a 'chic' router cli
      • abikfalvi has quit
      • aliemieshko
        no
      • agabert
        me neither
      • so this is hard for you and me
      • apuimedo
        :P
      • agabert
        but we will make it
      • apuimedo
        it's liek the cisco ones, isn't it?
      • *like
      • aliemieshko
        ok, maybe i can delete all and then create again ?
      • agabert
        yes and ryu owes me a lot of beer for that. probably more than i can ever drink.
      • aliemieshko: delete what?
      • apuimedo
        xD
      • abikfalvi joined the channel
      • aliemieshko
        my router
      • agabert
        midonet> host host0 binding list
      • host host0 interface eth1 port router0:port0
      • midonet> host host0 delete binding port router0:port0
      • midonet> host host0 binding list
      • midonet>
      • aliemieshko: dont be foolish, you are almost there
      • do host host0 binding list
      • then do the delete as you can see here
      • aliemieshko
        midonet> host host0 binding list
      • host host0 interface veth1 port router0:port1
      • host host0 interface tap2e9313fd-d5 port bridge0:port1
      • agabert
        i broke a demo system from me for you.
      • i hope you are happy now.
      • the binding must go to the provider router port
      • not the internal router
      • you did everything right
      • the only thing you need to do now is use the correct router
      • which is the provider router, not the other one
      • aliemieshko
        sorry, I appreciate your help
      • midonet> router list
      • router router0 name router state up infilter chain0 outfilter chain1
      • router router1 name MidoNet Provider Router state up
      • router1
      • agabert
        right
      • you wanna bind on router1
      • aliemieshko
        ok, how ?
      • agabert
        host list
      • router list
      • aliemieshko
        first we need to delete old
      • agabert
        we have
      • you deleted it: host host0 delete binding port router0:port0
      • where router0:port0 is the router and port you want to uncling
      • aliemieshko
        yes
      • midonet> host host0 binding list
      • host host0 interface tap2e9313fd-d5 port bridge0:port0
      • agabert
        good
      • now we can bind again
      • host list
      • router list
      • aliemieshko
        midonet> host list
      • host host0 name node-6.domain.tld alive true
      • host host1 name node-8.domain.tld alive true
      • host host2 name node-7.domain.tld alive true
      • midonet> router list
      • router router0 name router state up infilter chain0 outfilter chain1
      • router router1 name MidoNet Provider Router state up
      • agabert
        host host0 add binding port router router1 port port2 interface veth1
      • aliemieshko
        midonet> host host0 add binding port router router1 port port2 interface veth1
      • Internal error: Invalid value field port: 1e1b4be8-f213-4e30-bb73-6cda4a2f8c15
      • agabert
        router router1 port list
      • aliemieshko
        midonet> router router1 port list
      • port port0 device router1 state up mac ac:ca:ba:4c:60:ad address 169.254.255.1 net 169.254.255.0/30 peer router0:port0
      • port port1 device router1 state up mac ac:ca:ba:69:e1:0f address 200.200.200.1 net 200.200.200.0/24 peer bridge1:port0
      • port port2 device router1 state up mac ac:ca:ba:d8:be:f8 address 192.168.254.254 net 192.168.254.0
      • agabert
        now again
      • host host0 add binding port router router1 port port2 interface veth1
      • aliemieshko
        midonet> host host0 add binding port router router1 port port2 interface veth1
      • host host0 interface veth1 port router1:port2
      • agabert
        nice
      • now confirm
      • host host0 binding list
      • router router1 port list
      • aliemieshko
        midonet> host host0 binding list
      • host host0 interface veth1 port router1:port2
      • host host0 interface tap2e9313fd-d5 port bridge0:port0
      • midonet> router router1 port list
      • port port0 device router1 state up mac ac:ca:ba:4c:60:ad address 169.254.255.1 net 169.254.255.0/30 peer router0:port0
      • port port1 device router1 state up mac ac:ca:ba:69:e1:0f address 200.200.200.1 net 200.200.200.0/24 peer bridge1:port0
      • port port2 device router1 state up mac ac:ca:ba:d8:be:f8 address 192.168.254.254 net 192.168.254.0
      • agabert
        ryu_mido: you owe me a CCIE paper and a CCNA paper and a lot of beer (as already pointed out by yours truly)
      • goo
      • good
      • now do me a favor, go do commandline on node-6 and ping 192.168.254.254
      • the leg should come up and send icmp back
      • aliemieshko
        [root@node-6 ~]# ping 192.168.254.254
      • PING 192.168.254.254 (192.168.254.254) 56(84) bytes of data.
      • From 192.168.254.1 icmp_seq=2 Destination Host Unreachable
      • agabert
        ifconfig veth0 up
      • ifconfig veth1 up
      • ifconfig fakeuplink up
      • brctl show