Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3194072
  • 博文数量: 443
  • 博客积分: 11301
  • 博客等级: 上将
  • 技术积分: 5679
  • 用 户 组: 普通用户
  • 注册时间: 2004-10-08 12:30
个人简介

欢迎加入IT云增值在线QQ交流群:342584734

文章分类

全部博文(443)

文章存档

2022年(1)

2021年(1)

2015年(2)

2014年(1)

2013年(1)

2012年(4)

2011年(19)

2010年(32)

2009年(2)

2008年(4)

2007年(31)

2006年(301)

2005年(42)

2004年(2)

分类: 系统运维

2011-01-06 10:28:32

Problem Statement 
The local-mac-address default setting in the OBP is:
 local-mac-address? false
Therefore all network interfaces in a node have the same MAC addresses.
If only one public interface is being used with this configuration, no
problems are encountered in a SunCluster 2.x configuration. The same is
true if using public network management.
 
In the following network configuration examples however, it will be    
necessary to have various MAC addresses on all installed network inter-
faces in a node.
The following examples apply for 2 or more interfaces.
*************************************************************************
Example 1 - all 3 network interfaces with the same MAC address
                       on one ethernet segment :
All interfaces are connected to the same network segment. If the node gets
a request with its MAC address, all network interfaces in the node will
answer. In this example the request will be answered 3 times.
Disadvantage: high network load and bad network performance.
                     -----------
                     |   Node       |
                     |                   |
                     -----------
                         |   |   |
                         |   |   |
                         |   |   |
 SegmA---------------------ClientsA
 
*************************************************************************
Example 2 - all 3 network interfaces with the same MAC address
                       on 3 bridged ethernet segments :
All interfaces are connected in several segments, but the networks are
aligned with a bridge. This will cause the same problem as in Example 1
because the bridge gives the information to the other segment.   If the
node gets a request with its MAC address, all network interfaces in the
node will answer. In this example the request will be answered 3 times.
This example applies also for the behavior with three switches.
Disadvantage: high network load and bad network performance.
                     -----------
                     |   Node       |
                     |                   |
                     -----------
                         |   |   |
                         |   |   |
                         |   |   |
SegmA-----------|--|---------------|----------ClientsA
                               |   |                     ----------
                               |   |                     | Bridge |
                               |   |                     ----------
SegmB-----------|--|---------------|----------ClientsB
                                     |     ----------
                                     |     | Bridge |
                                     |     ----------
SegmC--------------|-------|------------------ClientsC
 
*************************************************************************
 Example 3 - all 3 network interfaces with the same MAC address
                       on one ethernet (layer 2) switch
                      
All interfaces are connected to one ethernet switch (for example, the
SunSwitch). Now the behavior is influenced by the capabilities of the
switch. The switch builds up a table, where ports and MAC addresses are
combined. Only one port with one MAC address can be on top of the switch
table, so ALL packets are switched to ONE of the interfaces, only. The
interface changes if the node sends packets from another public interface,
but only one interface is active at a time.
Disadvantage: overall network performance is as fast as one of the interfaces.
                     -----------
                     |   Node       |
                     |                   |
                     -----------
                         |   |   |
                         |   |   |
                         |   |   |
                     -----------
                     | Switch     |
                     |                   |
                     -----------
                         |   |   |
                         |   |   |

                         |   |   |
         Clients A   B   C

Resolution  
Set the entry in OBP as follows:
  local-mac-address? true
  
With this setting, all network interfaces with their own MACaddress
onboard will get it from the hardware.
Be aware that the SunCluster 2.x will store the MAC address from the
private network in the /etc/opt/SUNWcluster/conf/.cdb file.

Supported private networks in the Sun Cluster 2.x are (Feb 2000):
   SCI (Scalable Coherent Interface)
 no problems because SBus SCI does not use a MAC address.
 
   hme (Sun FastEthernet)
 no problems because SBus hme always uses the MAC address  
 from the NVRAM.
 
   qfe (Quad Fast Ethernet)
 have a MAC address for each port onboard. If you have a
 qfe interface in the private network, you should use the
 mac-address from the NVRAM.
 
Three possibilities for configurations for qfe, or other network
interfaces in the future, which will have a mac-address onboard:
1) Install the Sun Cluster when the local-mac-address is set to false,
     and give the scinstall script the mac-address from the NVRAM.
    
     After the Sun Cluster installation, set the local-mac-address to
     true and reboot the system. If you start the SunCluster now, the
     private network interfaces will get the mac-addresses which are
     stored in the /etc/opt/SUNWcluster/conf/.cdb file.
     And all other qfe interfaces will have a unique mac-address.
    
     Also if you swap the hardware, you will not have any problems!
    
2) If you have installed the Sun Cluster with local-mac-address true,
     you can change the mac-address in the
     /etc/opt/SUNWcluster/conf/.cdb file with the command:
    
      scconf -N
      
     If you use the command you must run it on all nodes in the Cluster
     because each node only modifies its own .cdb file.  
     The private network interfaces will be plumbed with the mac-address
     from the .cdb file.
    
3) If you like to configure the mac-address within the boot, you will
     do this in
    
      /etc/rcS.d/S30rootusr.sh   (<= SunOS 5.7)
               /etc/rcS.d/S30network.sh   (>= SunOS 5.8)
              
     with the command
    
      ifconfig ether 8:0:20:83:fe:75

     For this purpose you have to inactivate the ability to unload the
     respective interface driver. An unload would reset the changes.
     Add a forceload line with your driver to /etc/systems, e.g.:
    
      forceload: drv/hme
 forceload: drv/qfe
     This possibility can be used to keep the same MAC address on all interfaces
     within a nafo group.
     Do not use the /opt/SUNWpnm/bin/staticroutes/staticroutes.nafo* file to set
     MAC addresses, this would trigger BugID 4281521 .

What about pnm when the local-mac-address is set to true?
---------------------------------------------------------
If one interface fails in the nafo group, the other would get its
own mac-address. Therefore, the interface taking over will send a new
ARP Request which the Clients must learn (gratious ARP). This has
been tested with Sun clients and Windows 98 clients - both could
learn the new ARP request immediately.
Possibility of problems in configurations with routers.
Configuration Example:
                     -----------
                     |   Node     |
                     |                 |
                     -----------
                         |   |   |
                         |   |   |
                         |   |   |
 NetA-----------|--|---------------|----------ClientsA
                               |   |                     ----------
                               |   |                     | Router |
                               |   |                     ----------
 NetB-----------|--|-------|-------|----------ClientsB
                                     |     ----------
                                     |     | Router |
                                     |     ----------
 NetC--------------|-------|------------------ClientsC

The function is dependent on the ARP configuration of the routers.
Some routers don't learn new ARP request because they reset the
ARP table
e.g. 4 hours. Therefore the client is unable to connect
to the logical host after a pnm failover until the router has done
its reset. This will also happen when a logical host does a failover
from one node to the other because both have various MAC addresses,
and are independent from the local-mac-address.
You have to setup your routers for pnm and logical hosts.
For more information please refer to
INFODOC ID 18627: Debugging pnmd & nafo group problems

Additional comment:
------------------
If you have set the MAC address with the above ifconfig command, it
can only be cleared by the following:
 - reboot the node
 - use the ifconfig command again.
It can not be cleared with unplumb and plumb.
阅读(2895) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~