表达网络配置的编程语言建议
答
我NCD programming language可能是你要找的。
下面是通过DHCP配置有线网络接口(同一个从维基)的一个样本程序:
process lan {
# Set device.
var("eth0") dev;
# Wait for device, set it up, and wait for network cable.
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.
# Note that it will only obtain the IP address, and *not* assign it;
# we do that with a separate command below.
net.ipv4.dhcp(dev) dhcp;
# Check IP address - make sure it's not local.
# If you have other reserved subnets around, check for those too.
ip_in_network(dhcp.addr, "127.0.0.0", "8") test_local;
ifnot(test_local);
# Assign IP address, as obtained by DHCP.
net.ipv4.addr(dev, dhcp.addr, dhcp.prefix);
# Add default route, as obtained by DHCP.
net.ipv4.route("0.0.0.0", "0", dhcp.gateway, "20", dev);
# Configure DNS servers, as obtained by DHCP.
net.dns(dhcp.dns_servers, "20");
}
请务必阅读整个NCD维基页面。 NCD的功能远不止于它最初的样子(比如,条件,循环,未知设备的动态配置......)。它甚至可以执行一些非网络相关的任务,如报告输入设备(键盘,鼠标)事件。
您的意思是[网络本身的配置](http://en.wikipedia.org/wiki/Configuration_%28geometry%29)或[每个节点](http://en.wikipedia .ORG /维基/ CONFIGURATION_FILE)? –
我想要一种表达设备配置的语言。 – user963986