Различия
Показаны различия между двумя версиями страницы.
| Следующая версия | Предыдущая версия | ||
|
wiki:iproute2:ip_link [19/06/2018 00:06] Boris V. Vuks создано |
wiki:iproute2:ip_link [19/06/2018 01:06] (текущий) Boris V. Vuks [Создание] |
||
|---|---|---|---|
| Строка 44: | Строка 44: | ||
| Другие расширения типа: vepa, veb и hairpin режимов могут быть найдены на соответвствующей странице команды bridge. | Другие расширения типа: vepa, veb и hairpin режимов могут быть найдены на соответвствующей странице команды bridge. | ||
| + | |||
| + | ====== Vlan 802.1q манипуляции ====== | ||
| + | |||
| + | ==== Создание ==== | ||
| + | ip link add link eth0 name eth0.2 type vlan id 2 | ||
| + | ip link set eth0.2 up | ||
| + | | ||
| + | ==== Удаление ==== | ||
| + | ip link set eth0.2 down | ||
| + | ip link del eth0.2 | ||
| + | | ||
| + | ====== bonding манипуляции ====== | ||
| + | [[https:// | ||
| + | modprobe bonding | ||
| + | |||
| + | ==== Создание ==== | ||
| + | ip link add bond0 type bond | ||
| + | echo 4 > / | ||
| + | ip link set eth0 master bond0 | ||
| + | ip link set eth1 master bond0 | ||
| + | ip link set bond0 up | ||
| + | |||
| + | |||
| + | <spoiler | режимы в / | ||
| + | |||
| + | Specifies one of the bonding policies. The default is | ||
| + | balance-rr (round robin). | ||
| + | < | ||
| + | balance-rr or 0 | ||
| + | Round-robin policy: Transmit packets in sequential | ||
| + | order from the first available slave through the | ||
| + | last. | ||
| + | tolerance. | ||
| + | </ | ||
| + | < | ||
| + | active-backup or 1 | ||
| + | Active-backup policy: Only one slave in the bond is | ||
| + | active. | ||
| + | if, the active slave fails. | ||
| + | externally visible on only one port (network adapter) | ||
| + | to avoid confusing the switch. | ||
| + | |||
| + | In bonding version 2.6.2 or later, when a failover | ||
| + | occurs in active-backup mode, bonding will issue one | ||
| + | or more gratuitous ARPs on the newly active slave. | ||
| + | One gratuitous ARP is issued for the bonding master | ||
| + | interface and each VLAN interfaces configured above | ||
| + | it, provided that the interface has at least one IP | ||
| + | address configured. | ||
| + | interfaces are tagged with the appropriate VLAN id. | ||
| + | |||
| + | This mode provides fault tolerance. | ||
| + | option, documented below, affects the behavior of this | ||
| + | mode. | ||
| + | </ | ||
| + | < | ||
| + | balance-xor or 2 | ||
| + | XOR policy: Transmit based on the selected transmit | ||
| + | hash policy. | ||
| + | MAC address XOR'd with destination MAC address XOR | ||
| + | packet type ID) modulo slave count]. | ||
| + | policies may be selected via the xmit_hash_policy option, | ||
| + | described below. | ||
| + | This mode provides load balancing and fault tolerance. | ||
| + | </ | ||
| + | < | ||
| + | broadcast or 3 | ||
| + | Broadcast policy: transmits everything on all slave | ||
| + | interfaces. | ||
| + | </ | ||
| + | < | ||
| + | 802.3ad or 4 | ||
| + | IEEE 802.3ad Dynamic link aggregation. | ||
| + | aggregation groups that share the same speed and | ||
| + | duplex settings. | ||
| + | aggregator according to the 802.3ad specification. | ||
| + | |||
| + | Slave selection for outgoing traffic is done according | ||
| + | to the transmit hash policy, which may be changed from | ||
| + | the default simple XOR policy via the xmit_hash_policy | ||
| + | option, documented below. | ||
| + | policies may be 802.3ad compliant, particularly in | ||
| + | regards to the packet mis-ordering requirements of | ||
| + | section 43.2.4 of the 802.3ad standard. | ||
| + | peer implementations will have varying tolerances for | ||
| + | noncompliance. | ||
| + | Prerequisites: | ||
| + | 1. Ethtool support in the base drivers for retrieving | ||
| + | the speed and duplex of each slave. | ||
| + | 2. A switch that supports IEEE 802.3ad Dynamic link | ||
| + | aggregation. | ||
| + | Most switches will require some type of configuration | ||
| + | to enable 802.3ad mode. | ||
| + | </ | ||
| + | < | ||
| + | balance-tlb or 5 | ||
| + | Adaptive transmit load balancing: channel bonding that | ||
| + | does not require any special switch support. | ||
| + | |||
| + | In tlb_dynamic_lb=1 mode; the outgoing traffic is | ||
| + | distributed according to the current load (computed | ||
| + | relative to the speed) on each slave. | ||
| + | |||
| + | In tlb_dynamic_lb=0 mode; the load balancing based on | ||
| + | current load is disabled and the load is distributed | ||
| + | only using the hash distribution. | ||
| + | |||
| + | Incoming traffic is received by the current slave. | ||
| + | If the receiving slave fails, another slave takes over | ||
| + | the MAC address of the failed receiving slave. | ||
| + | |||
| + | Prerequisite: | ||
| + | |||
| + | Ethtool support in the base drivers for retrieving the | ||
| + | speed of each slave. | ||
| + | </ | ||
| + | < | ||
| + | balance-alb or 6 | ||
| + | Adaptive load balancing: includes balance-tlb plus | ||
| + | receive load balancing (rlb) for IPV4 traffic, and | ||
| + | does not require any special switch support. | ||
| + | receive load balancing is achieved by ARP negotiation. | ||
| + | The bonding driver intercepts the ARP Replies sent by | ||
| + | the local system on their way out and overwrites the | ||
| + | source hardware address with the unique hardware | ||
| + | address of one of the slaves in the bond such that | ||
| + | different peers use different hardware addresses for | ||
| + | the server. | ||
| + | |||
| + | Receive traffic from connections created by the server | ||
| + | is also balanced. | ||
| + | Request the bonding driver copies and saves the peer's | ||
| + | IP information from the ARP packet. | ||
| + | Reply arrives from the peer, its hardware address is | ||
| + | retrieved and the bonding driver initiates an ARP | ||
| + | reply to this peer assigning it to one of the slaves | ||
| + | in the bond. A problematic outcome of using ARP | ||
| + | negotiation for balancing is that each time that an | ||
| + | ARP request is broadcast it uses the hardware address | ||
| + | of the bond. Hence, peers learn the hardware address | ||
| + | of the bond and the balancing of receive traffic | ||
| + | collapses to the current slave. | ||
| + | sending updates (ARP Replies) to all the peers with | ||
| + | their individually assigned hardware address such that | ||
| + | the traffic is redistributed. | ||
| + | redistributed when a new slave is added to the bond | ||
| + | and when an inactive slave is re-activated. | ||
| + | receive load is distributed sequentially (round robin) | ||
| + | among the group of highest speed slaves in the bond. | ||
| + | |||
| + | When a link is reconnected or a new slave joins the | ||
| + | bond the receive traffic is redistributed among all | ||
| + | active slaves in the bond by initiating ARP Replies | ||
| + | with the selected MAC address to each of the | ||
| + | clients. The updelay parameter (detailed below) must | ||
| + | be set to a value equal or greater than the switch' | ||
| + | forwarding delay so that the ARP Replies sent to the | ||
| + | peers will not be blocked by the switch. | ||
| + | |||
| + | Prerequisites: | ||
| + | 1. Ethtool support in the base drivers for retrieving | ||
| + | the speed of each slave. | ||
| + | 2. Base driver support for setting the hardware | ||
| + | address of a device while it is open. This is | ||
| + | required so that there will always be one slave in the | ||
| + | team using the bond hardware address (the | ||
| + | curr_active_slave) while having a unique hardware | ||
| + | address for each slave in the bond. If the | ||
| + | curr_active_slave fails its hardware address is | ||
| + | swapped with the new curr_active_slave that was | ||
| + | chosen. | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | ==== Удаление ==== | ||
| + | ip link set bond0 down | ||
| + | ip link del bond0 | ||