¿Cómo creo un alias ifconfig permanente estático?

7

¿Cómo consigo que este cambio de alias ifconfig loopback persista después de un reinicio?

$ sudo ifconfig lo0 alias 172.16.222.111
$ ifconfig
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
    options=1203<RXCSUM,TXCSUM,TXSTATUS,SW_TIMESTAMP>
    inet 127.0.0.1 netmask 0xff000000 
    inet6 ::1 prefixlen 128 
    inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1 
    inet 172.16.222.111 netmask 0xffff0000          ### <-- WANTED!!!
    nd6 options=201<PERFORMNUD,DAD>

Las únicas instrucciones similares que he encontrado son para archivos OSX inexistentes en otros sistemas * nix para archivos como /etc/network/interfaces o /etc/sysconfig/networking-scripts/ifcfg-eth0 .

    
pregunta JJ Zabkar 28.08.2017 - 18:31

1 respuesta

11

En términos generales, puede crear el alias persistente en Red en Preferencias del sistema.

Sinembargo,eldispositivolo0loopbacknosemuestraaquí.Paraestecasoespecial,necesitamosutilizarlaunchdparainiciarunscriptcortoconelcomandoifconfigqueusasteanteriormente.

Aquíhayunejemplodearchivo.plist,guardadocomocom.user.lo0-loopback.plist(sepuedeguardarencualquierlugar,yaquesecopiaráeneldirectoriocorrespondientemásadelante).

<?xmlversion="1.0" encoding="UTF-8"?> 
<!DOCTYPE plist PUBLIC -//Apple Computer//DTD PLIST 1.0//EN http://www.apple.com/DTDs/PropertyList-1.0.dtd > 
<plist version="1.0"> 
<dict> 
  <key>Label</key> 
  <string>com.user.lo0-loopback</string> 
  <key>ProgramArguments</key> 
  <array> 
    <string>/sbin/ifconfig</string> 
    <string>lo0</string> 
    <string>alias</string> 
    <string>172.16.222.111</string> 
  </array> 
  <key>RunAtLoad</key> <true/> 
  <key>Nice</key> 
  <integer>10</integer> 
  <key>KeepAlive</key> 
  <false/> 
  <key>AbandonProcessGroup</key> 
  <true/> 
  <key>StandardErrorPath</key> 
  <string>/var/log/loopback-alias.log</string> 
  <key>StandardOutPath</key> 
  <string>/var/log/loopback-alias.log</string> 
</dict> 
</plist>

A continuación, muévalo al directorio /Library/LaunchDaemons/ para que se inicie en el inicio (se ejecutará como root ) y establezca los permisos correctos

$ cp com.user.lo0-loopback.plist /Library/LaunchDaemons/ 

$ chmod 0644 /Library/LaunchDaemons/com.user.lo0-loopback.plist 
$ chown root:wheel /Library/LaunchDaemons/com.user.lo0-loopback.plist

Luego cárgalo con launchctl

$ launchctl load /Library/LaunchDaemons/com.user.lo0-loopback.plist

Reinicie y su lo0 loopback debe tener un alias IP asignado que será persistente en todos los reinicios.

    
respondido por el Allan 28.08.2017 - 20:00

Lea otras preguntas en las etiquetas