Menggunakan perangkat lunak saya ini untuk konfigurasi jaringan, sangat mudah.
http://code.google.com/p/badvpn/wiki/NCD
Program NCD berikut akan dilakukan. Ini juga menunjukkan bagaimana Anda dapat memperluas konfigurasi, dalam hal ini dengan menjalankan sesuatu ketika jaringan naik / turun.
process eth0 {
# Set device.
var("eth0") dev;
# Wait for device to appear, set it up, and wait for cable to be plugged in.
net.backend.waitdevice(dev);
net.up(dev);
net.backend.waitlink(dev);
# DHCP configuration.
# net.ipv4.dhcp() will block here until it obtaines an IP address.
# It doesn't check the obtained address in any way,
# so as a basic security measure, do not proceed if it is local.
net.ipv4.dhcp(dev) dhcp;
ip_in_network(dhcp.addr, "127.0.0.0", "8") test_local;
ifnot(test_local);
# Assign IP address to interface, as obtained by DHCP.
net.ipv4.addr(dev, dhcp.addr, dhcp.prefix);
# Add default route.
net.ipv4.route("0.0.0.0", "0", dhcp.gateway, "20", dev);
# Add DNS servers.
net.dns(dhcp.dns_servers, "20");
# Run an external program when network comes up or goes down.
list("/some/program/to/run/when/up", "argument") do;
list("/some/program/to/run/when/down", "argument") undo;
run(do, undo);
}
Perhatikan bahwa ini tidak hanya akan menangani kabel jaringan yang dicolokkan atau keluar, tetapi juga antarmuka jaringan itu sendiri yang muncul dan hilang (berguna jika itu USB).
Keuntungan menggunakan NCD dibandingkan dengan perangkat lunak lain seperti ifplugd adalah desainnya memungkinkan fleksibilitas yang tinggi. Ini pada dasarnya memungkinkan Anda untuk memprogram konfigurasi jaringan Anda sendiri, bukan hanya terbatas pada kemampuan hardcoded yang terbatas.
PEMBARUAN: Saya telah membuat paket Ubuntu untuk BadVPN dan NCD. Saya telah memperbarui wiki dengan petunjuk instalasi dan penggunaan untuk Ubuntu juga: http://code.google.com/p/badvpn/wiki/NCD#Running_it
ifplugd
dannetplugd
tampil tidak terawat. Namun pertanyaan serupa ini sepertinya memiliki jawaban yang baik (sederhana) menggunakan aturan udev - tidak perlu paket tambahan. serverfault.com/a/312296/275255