Artigos
Sistemas
Administração de Servers e Storage
Por Andrew Walton
Postado em Dezembro 2014
A arquitetura de redes Oracle Solaris 11 apresenta importantes diferenças em relação a versões anteriores do Oracle Solaris. Não só mudou a implementação, mas também os nomes das interfaces de rede e os comandos e métodos para gerenciá-los e configurá-los.
Estas mudanças foram introduzidas para oferecer uma experiência de gerenciamento de redes mais consistente e integrada, especialmente, com a incorporação de configurações mais complexas pelos gerentes, incluindo agregação de links, pontes, balanceamento de cargas ou redes virtuais. Além da configuração de rede fixa tradicional, o Oracle Solaris 11 incorpora a configuração automática da rede mediante perfis de rede.
root@solaris:~# netadm list TYPE PROFILE STATE ncp Automatic online ncu:phys net0 online ncu:ip net0 online loc Automatic online loc NoNet offline loc User online Sem entrar em muitos detalhes agora (vamos abordar este tema em uma seção posterior), a saída anterior mostra que o NCP Automatic está ativado. root@solaris:~# netadm enable -p ncp DefaultFixed root@solaris:~# netadm list netadm: DefaultFixed NCP is enabled; automatic network management is not available. 'netadm list' is only supported when automatic network management is active. E para retornar para o NCP Automatic, use o seguinte comando: root@solaris:~# netadm enable -p ncp Automatic root@solaris:~# netadm list TYPE PROFILE STATE ncp Automatic uninitialized ncu:phys net0 uninitialized ncu:ip net0 uninitialized loc Automatic uninitialized Quando o sistema inicia a configuração dos datalinks e recebe um endereço IP do servidor DHCP, imediatamente retornamos para o estado online original: root@solaris:~# netadm list TYPE PROFILE STATE ncp Automatic online ncu:phys net0 online ncu:ip net0 online loc Automatic online loc NoNet offline loc User online
root@solaris:~# netadm enable -p ncp DefaultFixed
Em uma máquina com múltiplas redes físicas, você pode usar dladm para determinar o modo em que os nomes de interface de rede são alocados às interfaces físicas. root@solaris:~# dladm show-phys A criação de um endereço IP estático é um processo de dois passos, envolvendo a criação de uma interface IP e um endereço IP. Podem existir vários endereços IP associados a uma interface IP. Os objetos de endereço IP têm nomes que respondem ao formato interface/descrição.
root@solaris:~# ipadm create-ip net0
root@solaris:~# ipadm show-if
IFNAME CLASS STATE ACTIVE OVER
lo0 loopback ok yes ---
net0 ip down no ---
root@solaris:~# ipadm create-addr -T static -a 10.163.198.20/24 net0/acme
root@solaris:~# ipadm show-if
IFNAME CLASS STATE ACTIVE OVER
lo0 loopback ok yes ---
net0 ip ok yes ---
root@solaris:~# ipadm show-addr
ADDROBJ TYPE STATIC ADDR
lo0/v4 static ok 127.0.0.1/8
net0/acme static ok 10.163.198.20/24
lo0/v6 static ok ::1/128
root@solaris:~# route -p add default 10.163.198.1
add net default: gateway 10.163.198.1
add persistent net default: gateway 10.163.198.1
Exemplo: Configuração de um cliente DNS mediante SMF
root@solaris:~# svccfg -s svc:/network/dns/client setprop \
config/search='("uk.acme.com" "us.acme.com" "acme.com")' root@solaris:~# svccfg -s svc:/network/dns/client listprop config/search config/search astring "uk.acme.com" "us.acme.com" "acme.com" root@solaris:~# svccfg -s svc:/network/dns/client setprop \ config/nameserver=net_address: '(10.167.162.20 10.167.162.36)' root@solaris:~# svccfg -s svc:/network/dns/client listprop config/nameserver config/nameserver net_address 10.167.162.20 10.167.162.36 Após ter introduzido as mudanças de configuração, atualizamos o serviço SMF: root@solaris:~# svcadm refresh svc:/network/dns/client Não é necessário definir as propriedades para cada base de dados de serviço de nomeação. Podemos utilizar a propriedade especial config/default para proporcionar um valor predeterminado. Também é possível customizar de forma individual as entradas que não podem usar o valor predeterminado. Exemplo: Configuração de /etc/switch.conf mediante SMF root@solaris:~# svccfg -s svc:/system/name-service/switch setprop config/default = "files nis" root@solaris:~# svccfg -s svc:/system/name-service/switch setprop config/host = "files dns nis" root@solaris:~# svccfg -s svc:/system/name-service/switch setprop config/password = "files nis" root@solaris:~# svcadm refresh svc:/system/name-service/switch Nota: A propriedade config/host define os valores hosts e ipnodes em /etc/nsswitch.conf, enquanto a propriedade config/password define o valor passwd. As propriedades restantes têm o mesmo nome que seus valores /etc/nsswitch.conf.
root@solaris:~# svccfg -s svc:/system/identity:node setprop config/nodename = astring: hostname root@solaris:~# svcadm refresh svc:/system/identity:node root@solaris:~# svcadm restart identity:node Podemos definir o nome de host deste modo tanto para as configurações de rede automáticas quanto manuais.
root@solaris:~# cat /etc/hosts # # Copyright 2009 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # # Internet host table # ::1 solaris localhost 127.0.0.1 solaris localhost loghost Nota: Alguns instaladores de aplicativos podem falhar por causa das mudanças introduzidas no arquivo /etc/hosts. Caso aconteça isso com você, é possível que tenha que editar /etc/hosts diretamente.
root@solaris:~# netcfg netcfg> create ncp acme.corp.ncp netcfg:ncp:acme.corp.ncp> create ncu phys net0 Created ncu 'net0'. Walking properties ... activation-mode (manual) [manual|prioritized]> link-mac-addr> link-autopush> link-mtu> netcfg:ncp:acme.corp.ncp:ncu:net0> list ncu:net0 type link class phys parent "acme.corp.ncp" activation-mode manual enabled true netcfg:ncp:acme.corp.ncp:ncu:net0> end Committed changes netcfg:ncp:acme.corp.ncp> create ncu ip net0 Created ncu 'net0'. Walking properties ... ip-version (ipv4,ipv6) [ipv4|ipv6]> ipv4 ipv4-addrsrc (dhcp) [dhcp|static]> static ipv4-addr> 10.163.198.20/24 ipv4-default-route> 10.163.198.1 netcfg:ncp:acme.corp.ncp:ncu:net0> list ncu:net0 type interface class ip parent "acme.corp.ncp" enabled true ip-version ipv4 ipv4-addrsrc static ipv4-addr "10.163.198.20/24" ipv4-default-route "10.163.198.1" ipv6-addrsrc dhcp,autoconf netcfg:ncp:acme.corp.ncp:ncu:net0> end Committed changes netcfg:ncp:acme.corp.ncp> end netcfg> end
root@solaris:~# netcfg
netcfg> create loc acme.corp.loc
Created loc 'acme.corp.loc'. Walking properties ...
activation-mode (manual) [manual|conditional-any|conditional-all]> conditional-all
conditions> ncp acme.corp.ncp is active
nameservices (dns) [dns|files|nis|ldap]> dns,nis
nameservices-config-file ("/etc/nsswitch.dns")> /etc/nsswitch.acme
dns-nameservice-configsrc (dhcp) [manual|dhcp]> manual
dns-nameservice-domain>
dns-nameservice-servers> 10.167.162.20,10.167.162.36
dns-nameservice-search> acme.com,uk.acme.com,us.acme.com
dns-nameservice-sortlist>
dns-nameservice-options>
nis-nameservice-configsrc [manual|dhcp]> manual
nis-nameservice-servers> 10.167.162.21
default-domain> acme.com
nfsv4-domain>
ipfilter-config-file>
ipfilter-v6-config-file>
ipnat-config-file>
ippool-config-file>
ike-config-file>
ipsecpolicy-config-file>
netcfg:loc:acme.corp.loc> list
loc:acme.corp.loc
activation-mode conditional-all
conditions "ncp acme.corp.ncp is active"
enabled false
nameservices dns,nis
nameservices-config-file "/etc/nsswitch.acme"
dns-nameservice-configsrc manual
dns-nameservice-servers "10.167.162.20","10.167.162.36"
dns-nameservice-search "acme.com","uk.acme.com","us.acme.com"
nis-nameservice-configsrc manual
nis-nameservice-servers "10.167.162.21"
default-domain "acme.com"
netcfg:loc:acme.corp.loc> end
Committed changes
netcfg> end
root@solaris:~# netadm enable acme.corp.ncp Enabling ncp 'acme.corp.ncp' root@solaris:~# netadm list TYPE PROFILE STATE ncp acme.corp.ncp online ncu:phys net0 online ncu:ip net0 online ncp Automatic disabled loc acme.corp.loc online loc Automatic offline loc NoNet offline loc User disabled
root@solaris:~# netcfg netcfg> select loc acme.corp.loc netcfg:loc:acme.corp.loc> list loc:acme.corp.loc activation-mode conditional-all conditions "ncp acme.corp.ncp is active" enabled false nameservices dns,nis nameservices-config-file "/etc/nsswitch.acme" dns-nameservice-configsrc manual dns-nameservice-servers "10.167.162.20","10.167.162.36" dns-nameservice-search "acme.com", "uk.acme.com","us.acme.com" nis-nameservice-configsrc manual nis-nameservice-servers "10.167.162.21" default-domain "acme.com" netcfg:loc:acme.corp.loc>
netcfg:loc:acme.corp.loc> list -a loc:acme.corp.loc activation-mode conditional-all conditions "ncp acme.corp.ncp is active" enabled false nameservices dns,nis nameservices-config-file "/etc/nsswitch.acme" dns-nameservice-configsrc manual dns-nameservice-domain dns-nameservice-servers "10.167.162.20","10.167.162.36" dns-nameservice-search "acme.com", uk.acme.com","us.acme.com" dns-nameservice-sortlist dns-nameservice-options nis-nameservice-configsrc manual nis-nameservice-servers "10.167.162.21" ldap-nameservice-configsrc ldap-nameservice-servers default-domain "acme.com" nfsv4-domain ipfilter-config-file ipfilter-v6-config-file ipnat-config-file ippool-config-file ike-config-file ipsecpolicy-config-file netcfg:loc:acme.corp.loc> netcfg:loc:acme.corp.loc> set dns-nameservice-servers = "10.167.162.20","10.167.162.36","192.135.82.44" netcfg:loc:acme.corp.loc> list loc:acme.corp.loc activation-mode conditional-all conditions "ncp acme.corp.ncp is active" enabled false nameservices dns,nis nameservices-config-file "/etc/nsswitch.dns" dns-nameservice-configsrc manual dns-nameservice-servers "10.167.162.20","10.167.162.36","192.135.82.44" dns-nameservice-search "acme.com", uk.acme.com","us.acme.com" nis-nameservice-configsrc manual nis-nameservice-servers "10.167.162.21" netcfg:loc:acme.corp.loc> verify All properties verified netcfg:loc:acme.corp.loc> commit Committed changes netcfg:loc:acme.corp.loc> end netcfg> end root@solaris:~# Lista 6. Visualização de todas as propriedades
Alguns recursos adicionais relacionados ao Oracle Solaris 11:
Andrew Walton é engenheiro sênior do grupo de ISV da Oracle; trabalhou com o UNIX por mais de 20 anos, durante os quais se desempenhou na Silicon Graphics, na Sun e na Oracle. É especializado em otimização do desempenho de aplicações e migração de código C e C++. |