2015-07-13 2 views
2

Я использую старый ноутбук в качестве беспроводного моста для подключения трех рабочих станций к Интернету. У меня есть Scientific Linux 6.6, установленный на ноутбуке и использующий это устройство eth0 для рабочих станций с помощью NetworkManager.Назначение статического IP-адреса в общем подключении в NetworkManager

Мне интересно, есть ли элегантный способ гарантировать, что NetworkManager назначает статический IP-адрес для каждой рабочей станции на основе своего MAC-адреса?

Я понимаю, что NetworkManager использует dnsmasq как сервер dhcp. Я играл с /etc/dnsmasq.conf, но безуспешно. NetworkManager, похоже, использует другой файл конфигурации при запуске dnsmasq.

Ваша помощь будет оценена.

ответ

0

Я использую Ubuntu, в котором статический IP может быть сконфигурирован с помощью /etc/network/interfaces

Scientific Linux, кажется, происходит от RedHat, который использует /etc/sysconfig/network-scripts/ifcfg-eth0 конфигурационный файл вместо.

Вот пример моего статического IP через /etc/network/interfaces:

auto lo 
    iface lo inet loopback 

    auto eth0 
    iface eth0 inet static 
    address 192.168.0.101 
    netmask 255.255.255.0 
    network 192.168.0.0 
    broadcast 192.168.0.255 
    gateway 192.168.0.1 

Для справки, вы можете оформить по этой ссылке: http://blog.shineservers.com/linux-static-ip-address-configuration/

+0

Спасибо за ваш комментарий, но это не то, что я искал. Я пытаюсь назначить статические IP-адреса для трех рабочих станций на основе их MAC-адресов, а не назначать статический адрес устройству eth0 на ноутбуке. И я хотел бы добиться этого с помощью NetworkManager. есть идеи как это сделать? –

0

У меня такая же проблема на Gentoo.
Я использую NetworkManager, dnsmasq и dhclient с systemd. В моем случае у меня есть компьютер с двойной локальной сетью, один подключен к интернет-маршрутизатору, а другой - к медиаплееру. Я хочу назначить фиксированный IP-адрес медиаплееру и разрешить доступ в Интернет через другую локальную сеть. Я получил доступ к игроку в Интернет, но не назначил фиксированный IP-адрес.

/etc/NetworkManager/NetworkManager.conf:

[main] 
plugins=keyfile 
dns=dnsmasq 
no-auto-default=* 

/и т.д./NetworkManager/система-соединения/VTEN (общее подключение/ссылка enp7s0):

[connection] 
id=VTEN 
uuid=1a887e17-8d8b-460f-8cda-8ca22e5b2f28 
type=ethernet 
permissions= 
secondaries= 

[ethernet] 
mac-address=1C:6F:65:35:4E:24 
mac-address-blacklist= 

[ipv4] 
dns-search= 
may-fail=false 
method=shared 

[ipv6] 
dns-search= 
method=ignore 

/и т.д./NetworkManager/Система-соединения/Интернет (Интернет/ссылка enp8s0)

[connection] 
id=enp8s0 (Internet) 
uuid=39559adb-4564-423a-805e-d12229f22845 
type=ethernet 
autoconnect=true 
permissions= 
secondaries= 

[ethernet] 
mac-address=1C:6F:65:35:4E:34 
mac-address-blacklist= 

[ipv4] 
dns-search= 
method=auto 

[ipv6] 
dns-search= 
method=ignore 

Чтобы активировать Dnsmasq в качестве DHCP-сервера я добавил этот файл с MAC медиаплеера и ИС, Я хочу назначить его.
/etc/NetworkManager/dnsmasq.d/servidor-dhcp:

interface=enp7s0 
dhcp-range=192.168.2.2,192.168.2.50 
dhcp-host=00:06:DC:89:74:36,192.168.2.2 

Чтобы назначить фиксированный IP к локальной сети подключен к медиа-плеер я установить /и т.д./RARP/dhclient.конф:

alias { 
    interface "enp7s0"; 
    fixed-address 192.168.2.1; 
    option subnet-mask 255.255.255.0; 
    option broadcast-address 192.168.2.255; 
    option domain-name-servers 127.0.0.1; 
} 

Когда я начал NetworkManagersystemd на это, кажется, все работы:

● NetworkManager.service - Network Manager 
    Loaded: loaded (/usr/lib64/systemd/system/NetworkManager.service; enabled; vendor preset: enabled) 
    Active: active (running) since mar 2015-12-08 01:51:15 CET; 59s ago 
Main PID: 25570 (NetworkManager) 
    CGroup: /system.slice/NetworkManager.service 
      ├─25570 /usr/sbin/NetworkManager --no-daemon 
      ├─25579 /sbin/dhclient -d -q -sf /usr/libexec/nm-dhcp-helper -pf /var/run/dhclient-enp8s0.pid -lf /var/lib/NetworkManager/dhclient-3382e7d4-c7a1-41a1-9b12-a7fa20bb3aa4-enp8s0.lease -cf /var/lib/NetworkManager/dhclient-enp8s0.conf enp8s0 
      └─26336 /usr/sbin/dnsmasq --no-resolv --keep-in-foreground --no-hosts --bind-interfaces --pid-file=/var/run/NetworkManager/dnsmasq.pid --listen-address=127.0.0.1 --conf-file=/var/run/NetworkManager/dnsmasq.conf --cache-size=400 --proxy-dnssec --conf-dir=/etc/NetworkManager/dnsmasq.d 

dic 08 01:51:21 localhost NetworkManager[25570]: <info> Executing: /sbin/iptables --table filter --delete FORWARD --destination 10.42.0.0/255.255.255.0 --out-interface enp7s0 --match state --state ESTABLISHED,RELATED --jump ACCEPT 
dic 08 01:51:21 localhost NetworkManager[25570]: <info> Executing: /sbin/iptables --table filter --delete FORWARD --source 10.42.0.0/255.255.255.0 --in-interface enp7s0 --jump ACCEPT 
dic 08 01:51:21 localhost NetworkManager[25570]: <info> Executing: /sbin/iptables --table filter --delete FORWARD --in-interface enp7s0 --out-interface enp7s0 --jump ACCEPT 
dic 08 01:51:21 localhost NetworkManager[25570]: <info> Executing: /sbin/iptables --table filter --delete FORWARD --out-interface enp7s0 --jump REJECT 
dic 08 01:51:21 localhost NetworkManager[25570]: <info> Executing: /sbin/iptables --table filter --delete FORWARD --in-interface enp7s0 --jump REJECT 
dic 08 01:51:21 localhost NetworkManager[25570]: <info> Executing: /sbin/iptables --table filter --delete INPUT --in-interface enp7s0 --protocol udp --destination-port 67 --jump ACCEPT 
dic 08 01:51:21 localhost NetworkManager[25570]: <info> Executing: /sbin/iptables --table filter --delete INPUT --in-interface enp7s0 --protocol tcp --destination-port 67 --jump ACCEPT 
dic 08 01:51:21 localhost NetworkManager[25570]: <info> Executing: /sbin/iptables --table filter --delete INPUT --in-interface enp7s0 --protocol udp --destination-port 53 --jump ACCEPT 
dic 08 01:51:21 localhost NetworkManager[25570]: <info> Executing: /sbin/iptables --table filter --delete INPUT --in-interface enp7s0 --protocol tcp --destination-port 53 --jump ACCEPT 
dic 08 01:51:26 localhost NetworkManager[25570]: <info> startup complete 

Но:

$ ip a       
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default 
..... 
2: enp7s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000 
    link/ether 1c:6f:65:35:4e:24 brd ff:ff:ff:ff:ff:ff 
    inet 10.42.0.1/24 brd 10.42.0.255 scope global enp7s0 
     valid_lft forever preferred_lft forever 
    inet6 fe80::1e6f:65ff:fe35:4e24/64 scope link tentative 
     valid_lft forever preferred_lft forever 
3: enp8s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000 
    link/ether 1c:6f:65:35:4e:34 brd ff:ff:ff:ff:ff:ff 
    inet 192.168.1.2/24 brd 192.168.1.255 scope global dynamic enp8s0 
     valid_lft 86401sec preferred_lft 86401sec 
    inet6 fe80::1e6f:65ff:fe35:4e34/64 scope link 
     valid_lft forever preferred_lft forever 

Ссылка enp7s0 и медиаплеер имеют ¿случайным? IP ¿, назначенный NetworkManager ?. Ни dnsmasq (dhcp) ни dhclient (с enp7s0) выполняют свою работу.

Смежные вопросы