Как настроить сетевые профили в Centos?

Как настроить сетевые профили в Centos?

Я пытаюсь настроить два сетевых профиля в Centos. Один для дома, один для работы. Домашний профиль имеет фиксированный IP-адрес, фиксированный шлюз и адреса DNS-сервера. Рабочий профиль зависит от DHCP.

Я создал каталоги 'home' и 'work' в /etc/sysconfig/networking/profiles. Каждый из них имеет следующие файлы, содержащие правильную конфигурацию:

> -rw-r--r-- 2 root root  422 Apr 17 20:17 hosts
> -rw-r--r-- 5 root root  223 Apr 17 20:18 ifcfg-eth0
> -rw-r--r-- 1 root root  101 Apr 17 20:17 network
> -rw-r--r-- 2 root root   73 Apr 17 20:18 resolv.conf

Уже существовал профиль «по умолчанию», содержащий те же файлы.

Затем я дал следующие команды:

system-config-network-cmd --profile work --activate
service network restart

Я ожидал, что эти файлы будут скопированы из profiles/workкаталога в /etc/sysconfig/и /etc/sysconfig/networking-scripts. И большинство файлов действительно копируются, за исключением ifcfg-eth0.

Достаточно странно, что файлы, похоже, перезаписываются текущими настройками, когда я запускаю system-config-network-cmd. Другие файлы также затрагиваются, но их содержимое остается нетронутым.

Система — Centos 5.7, запущенная на виртуальном ПК на машине с Windows 7. Вот вывод ifconfig:

# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:03:FF:6F:2E:AB
          inet addr:192.168.1.200  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::203:ffff:fe6f:2eab/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:4199761 errors:7 dropped:0 overruns:0 frame:0
          TX packets:1733750 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:2316624688 (2.1 GiB)  TX bytes:415533386 (396.2 MiB)
          Interrupt:9

Может кто-нибудь подскажет, чего я здесь не понимаю?

решение1

Как следует из RedHat'sдокументацияв сетевых профилях не следует использовать базовое имя интерфейса ( eth0) для интерфейсов профиля, а иметь один, называемый как eth0_workи т. д. Кстати, вам не нужно перезапускать конфигурацию сети, так как переключение профилей обрабатывает это самостоятельно. Пример:

# system-config-network-cmd --profile foobar --activate
Network device deactivating...
Deactivating network device eth0, please wait...
Network device activating...
Activating network device eth0_foobar, please wait...

решение2

Зачем здесь использовать профиль?

Предположим, что eth0 — это домашняя линия, статический IP, отредактируйте:

/etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0
IPADDR=192.168.57.200
NETMASK=255.255.255.0
STATIC=yes
ONBOOT=yes

А для другой рабочей линии используйте DHCP, отредактируйте:

/etc/sysconfig/network-scripts/ifcfg-eth1

DEVICE=eth0
ONBOOT=yes
BOOTPROTO=dhcp

И убедитесь, что networkслужба запускается при загрузке.

например, если вы запускаете службу на уровне 2, 3, вы можете сделать:

chkconfig --level 23 network on

Перезагрузите, чтобы увидеть изменения.

Связанный контент