Як налаштувати робочий стіл для статичної IP-адреси?


24

За замовчуванням Ubuntu використовує DHCP та Gnome NetworkManger для налаштування інтерфейсів. Це в багатьох випадках не є оптимальним.

Як налаштувати настільний апарат для статичної IP-адреси, яка стосується всіх користувачів?

Додаткова інформація : Для 99,9% користувачів статичний запис DHCP - це, мабуть, найпростіше рішення, проте я виявив конфлікт із mythtv-backgroundпроцесом та будь-якими змінами інтерфейсу eth0. Якщо інтерфейс виведений / знижений після запуску mythtv, він висить процес (який також порушив призупинення роботи системи). Тому мої запитання справді потребують статичної IP-адреси, де інтерфейс виведений із відомим IP-адресою та залишається постійно.


2
В якості бічної примітки ви можете використовувати резервацію DHCP у своєму маршрутизаторі, який резервує IP для вашого комп'ютера, ідентифікуючи його за MAC-адресою NIC, і це буде буквально вести себе так, ніби встановлено статичний IP.
— LFC_fan

1
дякую гарну пораду тому, хто просто шукає послідовну IP-адресу
— cmcginty

Відповіді:


20

Клацніть правою кнопкою миші nm, виберіть Редагувати з'єднання ... знайдіть інтерфейс, натисніть Редагувати ... , виберіть Налаштування IPv4 , виберіть Ручне та налаштуйте свій інтерфейс.

Альтернативою може бути редагування / etc / network / interfaces . приклад конфігурації:

auto eth0
iface eth0 inet static
   address 192.168.1.1
    netmask 255.255.255.0
    gateway 192.168.1.1

потім біжи

/etc/init.d/networking restart

Майте на увазі, що це відключить nm для цього інтерфейсу, і вам доведеться видалити (або відменшити) записи, щоб активувати nm знову.

Редагувати (див. Повідомлення Кейсі): Вам також потрібно встановити DNS після редагування / etc / network / interface:

Встановіть один або декілька бажаних серверів імен у /etc/resolv.conf:

сервер імен 192.168.1.1


після 'перезавантаження мережі' з'являється лише ло-інтерфейс
— cmcginty

2
Ім'я інтерфейсу ( eth0на прикладі sBlatt) може бути різним на вашому ПК: eth0це звичайне ім'я для першого дротового інтерфейсу Ethernet; не існує стандарту іменування бездротових інтерфейсів. Команда ip link showвідобразить список мережевих інтерфейсів разом із їх відповідними параметрами.
— Ріккардо Муррі

Крім того, після клацання правою кнопкою миші на мережевому менеджері та вибору "Редагувати з'єднання" виберіть, буде він дротовим чи бездротовим, а потім натисніть "Додати". Додавши статичний IP за бажанням, закрийте всі діалогові вікна та натисніть лівою кнопкою миші на піктограму мережевого менеджера. Тепер у вас буде опція "Auto Eth0", яка є DHCP, і з'єднання, яке ви додали вручну. Це можна зробити кілька разів,
— склавши

@Riccardo, так, мій інтерфейс - eth0. Як я вже говорив, тільки внесення змін в інтерфейси не є для мене робочим рішенням
— cmcginty

@Scain, чи зміни в менеджері мережі стосуються всіх користувачів? Моя проблема полягала в тому, що перемикання користувачів приводить інтерфейс вниз і створює резервну копію. Це насправді не є статичним.
— cmcginty

5

Оновлення /etc/networking/interfacesдля встановлення статичної адреси:

auto eth0
iface eth0 inet static
    address 192.168.0.10
    netmask 255.255.255.0
    gateway 192.168.0.1

Встановіть один або кілька потрібних серверів імен у /etc/resolv.conf:

nameserver 192.168.0.1

Ви повинні не допустити, щоб gnome-network-manager намагався викрасти eth0з'єднання:

sudo apt-get remove network-manager network-manager-gnome

Призначте статичну IP-адресу шляхом перезавантаження мережевої підсистеми:

sudo invoke-rc.d networking restart

5
Не видаляйте мережевий менеджер! Ви ризикуєте закінчитись відсутністю підключення до Інтернету, якщо ви помилитесь у налаштуванні статичного IP-адреси (і ви не можете їх виправити).
— Ріккардо Муррі

1
Ви можете сказати NetworkManager не автоматично підключати інтерфейс (клацніть правою кнопкою миші -> Редагувати з'єднання ... -> вибрати один -> Редагувати ... -> натиснути на прапорець Підключити автоматично ); таким чином, ви все ще можете встановити мережевий менеджер і активувати інтерфейси вручну через ifup/ifdown
— Ріккардо Муррі

2
Крім того, мій коментар був там, щоб попередити користувачів про ту ж проблему, що видалити мережевий менеджер - це ризикований шлях. Ви, очевидно, можете керувати мережевим зв’язком та вирішувати проблеми; інші читачі цього питання можуть не ...
— Ріккардо Муррі

Не повинно /etc/networking/interfacesбути /etc/network/interfaces?
— CJBS

1

Якщо у вас увійшов трохи маршрутизатор (щось подібне до http://192.168.1.1 від вашого браузера), запишіть поточні адреси сервера DNS. Зарезервуйте ще одну IP-адресу від DHCP (щось на зразок 192.168.1.200-192.168.1.210) або відключіть DHCP разом.

З меню Ubuntu: Система -> Налаштування -> Мережеві підключення -> Авто eth0 -> редагувати -> Налаштування IPV4 -> Змінити його на Посібник -> додати ip, (щось на зразок 192.168.1.200, що ви резервували вище), мережна маска 255.255.255.0 ,, і внутрішня адреса маршрутизатора для маршруту за замовчуванням (щось на зразок 192.168.1.1, що ви використовували для входу в нього) -> Введіть адреси сервера DNS, записані в нижній частині вікна.


Я трохи оновив своє запитання, щоб пояснити, чому це рішення не допоможе мені. Мені потрібен інтерфейс, щоб постійно бути в режимі спокою.
— cmcginty

Він завжди з’явиться @ ця адреса під час завантаження (у цьому прикладі 192.168.0.200) та залишатиметься постійно. Ваш маршрутизатор більше не встановлює його через DHCP. Це важко закодовано в комп'ютер.

0

1) перевірте, який інтерфейс слід налаштувати, припустимо, інтерфейс, який ви хочете змінити, eth0у цьому випадку:

$ ip addr

2) відкрити та відредагувати /etc/network/interface:

$ sudo gedit /etc/network/interface

3) додати у файл такі рядки /etc/network/interface:

auto eth0
iface eth0 inet static
address 192.168.1.22
netmask 255.255.255.0
gateway 192.168.1.1

3) перезавантажте свій інтерфейс командою ifdownта ifup:

$ sudo ifdown --force eth0
$ sudo ifup --force eth0

PS: використовувати $ sudo systemctl restart networkingабо, $ sudo ifup eth0 можливо, не працює, коли використовуються інші мережеві інструменти, будь ласка, перевірте також Can't ifdown eth0 (основний інтерфейс)

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.