Introducción
Updated: Esta entrada la escribí hace mucho tiempo y estaba pensada para Solaris 9, si quieres ver cómo se realiza el mismo proceso, pero en Solaris 10, tienes la actualización de
Eliminar Unknow Hostname en Solaris 10
Si tenemos configurada nuestra salida a internet (external) en un interface que está sobre DHCP, entonces, Solaris intentará configurar el nombre de host a traves de este mismo. Esto supone que mi máquina Solaris quede con "unknown" como nombre de host.
Para solucionarlo, podemos hacer los siguientes pasos.
Asumimos que nuestro Sun tiene dos tarjetas de red,
ce0 y
ce1. La tarjeta
ce0 está conectada a nuestro
switch lan mediante una
dirección estática y la tarjeta
ce1 a nuestro modem ADSL mediante
DHCP, según la siguiente imagen
Para ello vamos a empezar configurando los interfaces, y el nombre de nuestro host,
topito
# echo "192.168.1.254 topito topito.example.com" >> /etc/hosts
# echo "topito" > /etc/nodename
# echo "topito" > /etc/hostname.ce0
Debemos crear una entrada de
hostname.ce0 vacía para hacer que el DHCP carge una dirección IP válida, además de la entrada
/etc/dhcp.ce1, que si está vacía contendrá los valores por defecto y si contiene datos serán las modificaciones de los mismos aplicados a este interface,
en nuestro caso ce1
# touch /etc/hostname.ce1
# touch /etc/dhcp.ce1
Si no queremos que se nos asignen los parámetros por defecto, podemos utilizar estos modificadores:
- wait TIEMPO_EN_SEGUNDOS por defecto son 30
- primary si queremos que sea o no el interface primario
La configuración DHCP de Solaris está hecha, ahora sólo nos queda hacer que cada vez que nuestro sistema se inicie no intente resolver el nombre de host por DHCP y nos ponga "Unknown", para ello, utilizaremos este pequeño script que colocándolo en /etc/rc2.d hará que se nos asigne nuestro nombre
# cat <<! >/etc/init.d/set_hostname
#!/sbin/sh
#*********************************************
#
# Name: set_hostname
# SCCS Id: @(#)set_hostname 1.2 07/26/04
#
# Description:
# This file is a script for re-setting your hostname to the
# right value if you use DHCP (which has a habit of setting
# your hostname to "unknown" if you use a cable modem).
#
#
# Copyright © 2000-2004 by Rich Teer.
# All rights reserved.
#
#*********************************************
HOSTNAME=`cat /etc/nodename`
uname -S $HOSTNAME
!
# ln /etc/init.d/set_hostname /etc/rc2.d/set_hostname
# chown root:sys /etc/init.d/set_hostname
# chmod 750 /etc/init.d/set_hostname
En
Solaris 10 las cosas cambian un poquito, este último paso podemos ignorarlo ya que basta con modificar un archivo de configuración para que sea el propio sistema quien se encarge de cargar el valor de
/etc/nodename, para ello modificaremos el parámetro
PARAM_REQUEST_LIST del archivo de configuración
/etc/default/dhcpagent y eliminaremos el valor 12 de la lista, ya que este valor corresponde a
hostname. (podemos obtener toda la información sobre los valores en el archivo)
- PARAM_REQUEST_LIST=1,3,6,12,15,28,43
por
- PARAM_REQUEST_LIST=1,3,6,15,28,43
Con esto tenemos ya configurado nuestra máquina Solaris para eliminar el molesto "Unknown", reiniciamos la máquina y listo!
Más información http://www.rite-group.com/rich/solaris_dhcp.html
Referencias