Macvlan: Unterschied zwischen den Versionen

Aus xinux.net
Zur Navigation springen Zur Suche springen
 
(3 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
=set main ip=
+
=important=
*ip addr add 192.168.244.150/21 dev eth0
+
!main interface musn't have a IP
=set macvlan interface mac0=
+
=set links=
*ip link add link eth0 mac0 address 00:22:22:22:22:22 type macvlan
+
*ip link add link eth0 mac0 address 00:22:22:22:22:00 type macvlan
=assign ip address to mac0=
+
*ip link add link eth0 mac1 address 00:22:22:22:22:11 type macvlan
*ip addr add 192.168.244.151/21 brd + dev mac0
+
*ip link add link eth0 mac2 address 00:22:22:22:22:22 type macvlan
=bring mac0 up=
+
=set ips=
*ip link set dev mac0 up
+
*ip addr add 192.168.244.180/21 brd + dev mac0
 +
*ip addr add 192.168.244.181/21 brd + dev mac1
 +
*ip addr add 192.168.244.182/21 brd + dev mac2
 +
=bring the interfaces up=
 +
*ip link set dev eth0 up
 +
*ip link set dev mac0 up
 +
*ip link set dev mac1 up
 +
*ip link set dev mac2 up  
 
=settings in proc system=
 
=settings in proc system=
 
*echo 1 >/proc/sys/net/ipv4/conf/all/arp_ignore
 
*echo 1 >/proc/sys/net/ipv4/conf/all/arp_ignore
 
*echo 2 >/proc/sys/net/ipv4/conf/all/arp_announce
 
*echo 2 >/proc/sys/net/ipv4/conf/all/arp_announce
 
*echo 2 >/proc/sys/net/ipv4/conf/all/rp_filter
 
*echo 2 >/proc/sys/net/ipv4/conf/all/rp_filter
=arptables=
 
*arptables -A OUT -o mac0 --arhln 06 -j mangle --mangle-hw-s 00:22:22:22:22:22
 
*arptables -A IN -d 192.168.244.151 --arhln 06 -j mangle --mangle-hw-d 00:22:22:22:22:22
 
 
  
 +
=script=
 +
<pre>
 +
#!/bin/bash
 +
case $1 in
 +
start)
 +
  echo start macvlan
 +
  ip link add link eth0 mac0 address 00:22:22:22:22:00 type macvlan
 +
  ip link add link eth0 mac1 address 00:22:22:22:22:11 type macvlan
 +
  ip link add link eth0 mac2 address 00:22:22:22:22:22 type macvlan
 +
  ip addr add 192.168.244.180/21 brd + dev mac0
 +
  ip addr add 192.168.244.181/21 brd + dev mac1
 +
  ip addr add 192.168.244.182/21 brd + dev mac2
 +
  ip link set dev eth0 up
 +
  ip link set dev mac0 up
 +
  ip link set dev mac1 up
 +
  ip link set dev mac2 up
 +
  echo 1 >/proc/sys/net/ipv4/conf/all/arp_ignore
 +
  echo 2 >/proc/sys/net/ipv4/conf/all/arp_announce
 +
  echo 2 >/proc/sys/net/ipv4/conf/all/rp_filter
 +
;;
 +
stop)
 +
  echo stop macvlan
 +
  echo 0 >/proc/sys/net/ipv4/conf/all/arp_ignore
 +
  echo 0 >/proc/sys/net/ipv4/conf/all/arp_announce
 +
  echo 0 >/proc/sys/net/ipv4/conf/all/rp_filter
 +
  ip link set dev mac0 down
 +
  ip link set dev mac1 down
 +
  ip link set dev mac2 down
 +
  ip link set dev eth0 down
 +
  ip addr del 192.168.244.180/21 brd + dev mac0
 +
  ip addr del 192.168.244.181/21 brd + dev mac1
 +
  ip addr del 192.168.244.182/21 brd + dev mac2
 +
  ip link del link eth0 mac0 address 00:22:22:22:22:00 type macvlan
 +
  ip link del link eth0 mac1 address 00:22:22:22:22:11 type macvlan
 +
  ip link del link eth0 mac2 address 00:22:22:22:22:22 type macvlan
 +
;;
 +
esac
  
  
 +
</pre>
 +
=links=
 
*http://serverfault.com/questions/223601/multiple-mac-addresses-on-one-physical-network-interface-linux
 
*http://serverfault.com/questions/223601/multiple-mac-addresses-on-one-physical-network-interface-linux
 
*http://backreference.org/2014/03/20/some-notes-on-macvlanmacvtap/
 
*http://backreference.org/2014/03/20/some-notes-on-macvlanmacvtap/

Aktuelle Version vom 24. März 2015, 14:53 Uhr

important

!main interface musn't have a IP

set links

  • ip link add link eth0 mac0 address 00:22:22:22:22:00 type macvlan
  • ip link add link eth0 mac1 address 00:22:22:22:22:11 type macvlan
  • ip link add link eth0 mac2 address 00:22:22:22:22:22 type macvlan

set ips

  • ip addr add 192.168.244.180/21 brd + dev mac0
  • ip addr add 192.168.244.181/21 brd + dev mac1
  • ip addr add 192.168.244.182/21 brd + dev mac2

bring the interfaces up

  • ip link set dev eth0 up
  • ip link set dev mac0 up
  • ip link set dev mac1 up
  • ip link set dev mac2 up

settings in proc system

  • echo 1 >/proc/sys/net/ipv4/conf/all/arp_ignore
  • echo 2 >/proc/sys/net/ipv4/conf/all/arp_announce
  • echo 2 >/proc/sys/net/ipv4/conf/all/rp_filter

script

#!/bin/bash
case $1 in
start)
  echo start macvlan
  ip link add link eth0 mac0 address 00:22:22:22:22:00 type macvlan
  ip link add link eth0 mac1 address 00:22:22:22:22:11 type macvlan
  ip link add link eth0 mac2 address 00:22:22:22:22:22 type macvlan
  ip addr add 192.168.244.180/21 brd + dev mac0
  ip addr add 192.168.244.181/21 brd + dev mac1
  ip addr add 192.168.244.182/21 brd + dev mac2
  ip link set dev eth0 up 
  ip link set dev mac0 up 
  ip link set dev mac1 up 
  ip link set dev mac2 up 
  echo 1 >/proc/sys/net/ipv4/conf/all/arp_ignore
  echo 2 >/proc/sys/net/ipv4/conf/all/arp_announce
  echo 2 >/proc/sys/net/ipv4/conf/all/rp_filter
 ;;
stop)
  echo stop macvlan
  echo 0 >/proc/sys/net/ipv4/conf/all/arp_ignore
  echo 0 >/proc/sys/net/ipv4/conf/all/arp_announce
  echo 0 >/proc/sys/net/ipv4/conf/all/rp_filter
  ip link set dev mac0 down 
  ip link set dev mac1 down
  ip link set dev mac2 down
  ip link set dev eth0 down 
  ip addr del 192.168.244.180/21 brd + dev mac0
  ip addr del 192.168.244.181/21 brd + dev mac1
  ip addr del 192.168.244.182/21 brd + dev mac2
  ip link del link eth0 mac0 address 00:22:22:22:22:00 type macvlan
  ip link del link eth0 mac1 address 00:22:22:22:22:11 type macvlan
  ip link del link eth0 mac2 address 00:22:22:22:22:22 type macvlan
 ;;
esac


links