I've recently been informed, and have seen a few sites claiming that in Raspbian Jessie:
1. /etc/network/interfaces will no longer be used properly.
2. All interfaces must be defined as DHCP inside /etc/network/interfaces (including those you want to have Static IPs)
3. Static IP's must be defined inside dhcpcd.conf
That's like defining a nightmare inside positive-experiences.conf.
This is a bad deviation from Debian / convention
I double checked with Debian Jessie, this change doesn't come from them. They still use /etc/network/interfaces properly
https://wiki.debian.org/NetworkConfiguration
I've confirmed this with 2 people on Freenode #debian
Arch Linux, as another example still defines static IP's in their normal way, inside /etc/netctl/my_static_profile
This is a deviation from Debian's design. And it's not a good change at all. It's a confounding of terminology. RbPi is supposed to be a teaching tool. So to start introducing pointless syntactic inconsistencies is counter productive to education IMO.
I'm not supporting this madness
If the above change is really the case, I for one will not support this madness. I'll switch to another distro. Likely Ubuntu, who's deviations are either optional or arguably improve upon Debian. Unfortunately Ubuntu won't work on the Pi A, A+, B, b+ and Zero.
This is where I discovered the problem:
viewtopic.php?f=36&t=139801
Re: Raspbian's new insanely bad design decision: DHCP Static
It's not a problem; it's a great new opportunity. Here's some of the stuff you can do in dhcpcd.conf:
- Have a different static IP address depending on which network you are connected to. Because an address that works on one network is often invalid on another,
- Have a static IP address only when there is no DHCP server.
- Like many quadcopters etc, have the Pi be its own network with a DHCP server, so you can connect to it on your phone out in the middle of a field.
-
- Posts: 2247
- Joined: Thu Feb 05, 2015 11:25 pm
Re: Raspbian's new insanely bad design decision: DHCP Static
Is there a simple guide to setting these behaviours?It's not a problem; it's a great new opportunity. Here's some of the stuff you can do in dhcpd.conf:
Have a different static IP address depending on which network you are connected to. Because an address that works on one network is often invalid on another,
Have a static IP address only when there is no DHCP server.
Like many quadcopters etc, have the Pi be its own network with a DHCP server, so you can connect to it on your phone out in the middle of a field.
Matthew
Re: Raspbian's new insanely bad design decision: DHCP Static
That depends on what you mean by simple. There may well be; I haven't looked. I picked that up by scanning "man dhcpcd.conf". It's not a step-by-step tutorial for newbies and it would take a little experimentation, but it seems fairly straightforward.
Edit: making a DHCP server is the obvious one because that's a common requirement: http://www.brennan.id.au/10-DHCP_Server.html
Edit: making a DHCP server is the obvious one because that's a common requirement: http://www.brennan.id.au/10-DHCP_Server.html
Re: Raspbian's new insanely bad design decision: DHCP Static
The above is wrong on most points.Lope wrote:I've recently been informed, and have seen a few sites claiming that in Raspbian Jessie:
1. /etc/network/interfaces will no longer be used properly.
2. All interfaces must be defined as DHCP inside /etc/network/interfaces (including those you want to have Static IPs)
3. Static IP's must be defined inside dhcpcd.conf
1. The changes are related to the adoption of dhcpcd as default network setting. If you want to use the old style just turn off dhcpcd.
2. Your 2. is totally wrong. Any use of dhcp disables dhcpcd.
3. Static IP addresses are an aberration for Pi users. This seems to be something that other platforms do not have. There are better ways unless your are running a DHCP server where it is necessary.
I agree that the cavalier way the Foundation introduced the networking changes without adequate documentation or consideration of older practices was unconscionable.
Re: Raspbian's new insanely bad design decision: DHCP Static
@Rurwin: Thanks for the interesting reply.
I appreciate these advancements in capability you describe. And that's one of the great benefits of Linux, the power, flexibility, configurability.
I see that dhcpcd is (or has recently become) more of a general purpose network interface manager.
And thus it should be renamed to an appropriate name like "new network manager" or some nice short linux-style name. It's fine if the network-manager has a capability of DHCP, but syntactically calling it dhcpcd is a mess.
Considering this, my first reaction was to say that /etc/network/interfaces should be done away with completely.
But I see that it's being kept around for compatibility reasons (which is a questionable reason to keep something around that now creates confusion with the misleading "dhcp" which now means "use new network manager".
That's very undesirable. Although I edited the file many times I never once noticed the new warning (that I looked for now) that the file was generated by dhcpcd.conf. Anyone familiar with how /etc/network/interfaces is likely to miss that comment. New linux installs often spit out text that one has to ignore, such as the license warning at /etc/motd
Anyway I'm not happy about /etc/network/interfaces dhcp meaning "use new network manager" but I could reluctantly accept it for a while.
Other than that, dhcpcd REALLY needs to be renamed to something more appropriate.
I could probably come up with a very compelling case why the `cp` program should delete files instead of copy them if you give it a -R or --remove flag.
Or make the `rm` program create a directory at ~/rm-trash and just mv the files there instead, with a little new warning displayed in the syslog, the first time it's used after booting up, for users who aren't familiar with the new "feature".
But is that really what we want?
I think it's a very good idea not.
2. See #1
3. Pi users are not only students using Pis as client computers. Pi students might want to learn about networking, or need incoming connections while having a crappy DHCP server that can't make client IP's static. Pi's are used for many industrial apps. Reqirements may vary, one may not have ability to predict or control the DHCP server in a given environment. There is no reason anyone should have to justify/explain why it's important to have the ability to have a static IP on any interface when desired, this is Linux.
I appreciate these advancements in capability you describe. And that's one of the great benefits of Linux, the power, flexibility, configurability.
I see that dhcpcd is (or has recently become) more of a general purpose network interface manager.
And thus it should be renamed to an appropriate name like "new network manager" or some nice short linux-style name. It's fine if the network-manager has a capability of DHCP, but syntactically calling it dhcpcd is a mess.
Considering this, my first reaction was to say that /etc/network/interfaces should be done away with completely.
But I see that it's being kept around for compatibility reasons (which is a questionable reason to keep something around that now creates confusion with the misleading "dhcp" which now means "use new network manager".
That's very undesirable. Although I edited the file many times I never once noticed the new warning (that I looked for now) that the file was generated by dhcpcd.conf. Anyone familiar with how /etc/network/interfaces is likely to miss that comment. New linux installs often spit out text that one has to ignore, such as the license warning at /etc/motd
Anyway I'm not happy about /etc/network/interfaces dhcp meaning "use new network manager" but I could reluctantly accept it for a while.
Other than that, dhcpcd REALLY needs to be renamed to something more appropriate.
I could probably come up with a very compelling case why the `cp` program should delete files instead of copy them if you give it a -R or --remove flag.
Or make the `rm` program create a directory at ~/rm-trash and just mv the files there instead, with a little new warning displayed in the syslog, the first time it's used after booting up, for users who aren't familiar with the new "feature".
But is that really what we want?
I think it's a very good idea not.
1. It's not possible to disable the dhcpcd service, to stop interfering with my /etc/network/interfaces or wlan0 if I need dhcp functionality for my wlan1.Milliways wrote:The above is wrong on most points.
1. The changes are related to the adoption of dhcpcd as default network setting. If you want to use the old style just turn off dhcpcd.
2. Your 2. is totally wrong.
3. Static IP addresses are an aberration for Pi users. This seems to be something that any other platforms do not have. There are better ways unless your are running a DHCP server where it is necessary.
I agree that the cavalier way the Foundation introduced the networking changes without adequate documentation or consideration of older practices was unconscionable.
2. See #1
3. Pi users are not only students using Pis as client computers. Pi students might want to learn about networking, or need incoming connections while having a crappy DHCP server that can't make client IP's static. Pi's are used for many industrial apps. Reqirements may vary, one may not have ability to predict or control the DHCP server in a given environment. There is no reason anyone should have to justify/explain why it's important to have the ability to have a static IP on any interface when desired, this is Linux.
Last edited by Lope on Mon Mar 14, 2016 9:58 am, edited 2 times in total.
Re: Raspbian's new insanely bad design decision: DHCP Static
Most PI users don't care how their PI gets an IP address. If you are worried about this, then you already know enough to find out how to do it.
Even Lope has worked it out !
There is no issue here.
PeterO
Even Lope has worked it out !
There is no issue here.
PeterO
Discoverer of the PI2 XENON DEATH FLASH!
Interests: C,Python,PIC,Electronics,Ham Radio (G0DZB),1960s British Computers.
"The primary requirement (as we've always seen in your examples) is that the code is readable. " Dougie Lawson
Interests: C,Python,PIC,Electronics,Ham Radio (G0DZB),1960s British Computers.
"The primary requirement (as we've always seen in your examples) is that the code is readable. " Dougie Lawson
Re: Raspbian's new insanely bad design decision: DHCP Static
Translated:PeterO wrote:Most PI users don't care how their PI gets an IP address. If you are worried about this, then you already know enough to find out how to do it.
Even Lope has worked it out !
There is no issue here.
PeterO
Most people are dumb. So let's make a dumb world. It's okay because the dumb people won't notice.
Terrible logic used to justify low standards. Maybe you can get them to add a tagline to Raspbian. "The OS for morons"
Or we can just have higher standards? Meaning that words should mean what they actually mean?
I could imagine what would happen if you built a terminal
$ thing --dostuff
I did good stuff.
$ Ok thanx!
You're welcome!
Last edited by Lope on Mon Mar 14, 2016 10:07 am, edited 1 time in total.
Re: Raspbian's new insanely bad design decision: DHCP Static
it is simple systemctl stop dhcpcd. Just using dhcp in /etc/network/interfaces will disable dhcpcd (although it will generate an error message).Lope wrote: 1. It's not possible to disable the dhcpcd service, to stop interfering with my /etc/network/interfaces or wlan0 if I need dhcp functionality for my wlan1.
Re: Raspbian's new insanely bad design decision: DHCP Static
Actually you mean mask, not stop.Milliways wrote:it is simple systemctl stop dhcpcd. Just using dhcp in /etc/network/interfaces will disable dhcpcd (although it will generate an error message).Lope wrote: 1. It's not possible to disable the dhcpcd service, to stop interfering with my /etc/network/interfaces or wlan0 if I need dhcp functionality for my wlan1.
So how am I going to get a DHCP IP on wlan1 if I stop dhcpcd?
I suspect you're wrong, and you've not addressed any of the concerns in my 2nd post in this thread. The line of argument you're taking is moot at this point.
Re: Raspbian's new insanely bad design decision: DHCP Static
Not at all. The PI is an educational tool. That means it needs to be easy to use. Beginners should not have to learn about IP network configuration on Day 1 Lesson 1.Lope wrote: Translated:
Most people are dumb. So let's make a dumb world. It's okay because the dumb people won't notice.
Sigh
PeterO
Discoverer of the PI2 XENON DEATH FLASH!
Interests: C,Python,PIC,Electronics,Ham Radio (G0DZB),1960s British Computers.
"The primary requirement (as we've always seen in your examples) is that the code is readable. " Dougie Lawson
Interests: C,Python,PIC,Electronics,Ham Radio (G0DZB),1960s British Computers.
"The primary requirement (as we've always seen in your examples) is that the code is readable. " Dougie Lawson
Re: Raspbian's new insanely bad design decision: DHCP Static
Your response is a non sequitur. I won't waste further time responding to you.
Re: Raspbian's new insanely bad design decision: DHCP Static
Classic concern troll behaviour !Lope wrote:Your response is a non sequitur. I won't waste further time responding to you.
It's not clear why you are even still here !
"I'm not supporting this madness If the above change is really the case, I for one will not support this madness. I'll switch to another distro."
PeterO
Discoverer of the PI2 XENON DEATH FLASH!
Interests: C,Python,PIC,Electronics,Ham Radio (G0DZB),1960s British Computers.
"The primary requirement (as we've always seen in your examples) is that the code is readable. " Dougie Lawson
Interests: C,Python,PIC,Electronics,Ham Radio (G0DZB),1960s British Computers.
"The primary requirement (as we've always seen in your examples) is that the code is readable. " Dougie Lawson
Re: Raspbian's new insanely bad design decision: DHCP Static
I'd just like to point out for the benefit of others
And what have I worked out?
Raspbian Jessie
(Where Jessie is the name of a DEBIAN distribution (that Raspbian as the name implies is derived from), where network interfaces are configured in /etc/network/interfaces)
Inside this file
* static doesn't mean static anymore - it means dhcpcd will interfere
* dhcp doesn't mean dhcp anymore it means "use the new network manager" (which is not called "the new network manager")
* dhcpcd is no longer a DHCP Client Daemon as the name implies. It's now a new general purpose network manager, which is the recommended way to set a static IP.
So he implies I must have been a bit dim that that was not obvious. And now he says I'm a troll too.
Charming
So he's implying I'm below average intelligence with the weasel phrase "Even Lope" and the exclamation.PeterO wrote:Even Lope has worked it out !
And what have I worked out?
Raspbian Jessie
(Where Jessie is the name of a DEBIAN distribution (that Raspbian as the name implies is derived from), where network interfaces are configured in /etc/network/interfaces)
Inside this file
* static doesn't mean static anymore - it means dhcpcd will interfere
* dhcp doesn't mean dhcp anymore it means "use the new network manager" (which is not called "the new network manager")
* dhcpcd is no longer a DHCP Client Daemon as the name implies. It's now a new general purpose network manager, which is the recommended way to set a static IP.
So he implies I must have been a bit dim that that was not obvious. And now he says I'm a troll too.
Charming
Re: Raspbian's new insanely bad design decision: DHCP Static
Oh, you were identifed as a troll after your first post ! You really don't get it. This is a non-issue becauseLope wrote:. And now he says I'm a troll too.
1) It doesn't stop anything from working.
2) You can find multiple links on google that show how it works. There are multiple threads on this forum that describe the situation and show how to configure dhcpcd.conf
3) It has been this way for some time. Its only you that has just discovered the changes and are getting upset that no one told you about them !
PeterO
Discoverer of the PI2 XENON DEATH FLASH!
Interests: C,Python,PIC,Electronics,Ham Radio (G0DZB),1960s British Computers.
"The primary requirement (as we've always seen in your examples) is that the code is readable. " Dougie Lawson
Interests: C,Python,PIC,Electronics,Ham Radio (G0DZB),1960s British Computers.
"The primary requirement (as we've always seen in your examples) is that the code is readable. " Dougie Lawson
Re: Raspbian's new insanely bad design decision: DHCP Static
Stop that right now, all of you. Attack the issues, not the person and do it politely and with respect. This thread has been needlessly agressive from the start and unless that stops right now it's getting locked.
The name of dhcpcd is not a Raspbian issue. You would need to take it up with the maintainers of dhcpcd.
The deafult position of Linux is that small applications do one thing well, and I support that. However here there is a lot to be gained by having one application, which has all the available information, do everything. It could be bundled up into a few separate apps, each with their own configuration files, but I don't think you would actually gain anything.
What would be useful would be a GUI app that configured dhcpcd.conf for common Pi usage scenarios, because it is capable of more nuanced behaviour than the simple tutorials have demonstrated, such as only setting a static IP address for the home network or when no DHCP server is available.
The name of dhcpcd is not a Raspbian issue. You would need to take it up with the maintainers of dhcpcd.
The deafult position of Linux is that small applications do one thing well, and I support that. However here there is a lot to be gained by having one application, which has all the available information, do everything. It could be bundled up into a few separate apps, each with their own configuration files, but I don't think you would actually gain anything.
What would be useful would be a GUI app that configured dhcpcd.conf for common Pi usage scenarios, because it is capable of more nuanced behaviour than the simple tutorials have demonstrated, such as only setting a static IP address for the home network or when no DHCP server is available.
Re: Raspbian's new insanely bad design decision: DHCP Static
I see Rurwin has already posted as a mod, but let me add, I was just about to ban some of the people commenting in this thread, but I have read Rurwin and cooled down.
But names have been noted. We DO NOT allow personal insult on this site. I see it again, people start getting bans.
But names have been noted. We DO NOT allow personal insult on this site. I see it again, people start getting bans.
Principal Software Engineer at Raspberry Pi Ltd.
Working in the Applications Team.
Working in the Applications Team.
Re: Raspbian's new insanely bad design decision: DHCP Static
It is certainly annoying when, as a long time Debian or other distro user, one gets tripped up by the network configuration change in Raspbian Jessie.
A big red warning about such breakages on the download page or somewhere would have saved a lot of frustration and searching around for clues.
Having to specify "manual" to get the new fully automated DHCP setup is weird. Having to set configure a static IP address in a DHCP conf file is just crazy.
Having said that, the new scheme is working very well around here. Things change all the time. Such is life.
For example, in Debian Jessie and KDE on my PC the mobile GSM connection works out of the box, for the first time in Linux history as far as I know. Only problem I could find no way to discover how KDE did that such that I could do the same on headless Jessie installations! Also it did not start any connections unless a user logged in.
Which brings be to my point, a GUI to click on to make all this easy for beginners is great and all, but it also needs to be simple and well documented for all the headless Pi users.
A big red warning about such breakages on the download page or somewhere would have saved a lot of frustration and searching around for clues.
Having to specify "manual" to get the new fully automated DHCP setup is weird. Having to set configure a static IP address in a DHCP conf file is just crazy.
Having said that, the new scheme is working very well around here. Things change all the time. Such is life.
For example, in Debian Jessie and KDE on my PC the mobile GSM connection works out of the box, for the first time in Linux history as far as I know. Only problem I could find no way to discover how KDE did that such that I could do the same on headless Jessie installations! Also it did not start any connections unless a user logged in.
Which brings be to my point, a GUI to click on to make all this easy for beginners is great and all, but it also needs to be simple and well documented for all the headless Pi users.
Memory in C++ is a leaky abstraction .
Re: Raspbian's new insanely bad design decision: DHCP Static
It could have an optional command-line interface. But that sort of misses your point.
The documentation is "man dhcpcd.conf" and it is fairly complete and understandable. There are a few concepts that don't come across well, but if one had the GUI app available to show some example configurations, I think that is all one would need.
The documentation is "man dhcpcd.conf" and it is fairly complete and understandable. There are a few concepts that don't come across well, but if one had the GUI app available to show some example configurations, I think that is all one would need.
Re: Raspbian's new insanely bad design decision: DHCP Static
I object to the new system because dhcpcd is hard to pronounce
I agree it is daft and unintuitive to have to edit the DHCP client daemon's config file to give details of a static address, it should just respect what's in network/interfaces.

The "manual" bit is set by default nowadays, I only ever edit dhcpcd.conf to set static IP addresses.Having to specify "manual" to get the new fully automated DHCP setup is weird. Having to set configure a static IP address in a DHCP conf file is just crazy.
I agree it is daft and unintuitive to have to edit the DHCP client daemon's config file to give details of a static address, it should just respect what's in network/interfaces.
+1Which brings be to my point, a GUI to click on to make all this easy for beginners is great and all, but it also needs to be simple and well documented for all the headless Pi users.
Re: Raspbian's new insanely bad design decision: DHCP Static
ruwin,
Still this forum is getting questions everyday about this mess.
I don't want another command line interface program. My command line interface to configuration on headless systems is called "vim" or sometimes "vi".It could have an optional command-line interface.
No doubt. But that assumes one has ever heard of dhcpcd. dhclient is what Debian uses. Or that one would want to use "*dhcp*" anything to set a static address. There is an hour or so wasted in finding out there.The documentation is "man dhcpcd.conf"
Still this forum is getting questions everyday about this mess.
Memory in C++ is a leaky abstraction .
Re: Raspbian's new insanely bad design decision: DHCP Static
No, because dhcpcd does not own network/interfaces.jahboater wrote:I agree it is daft and unintuitive to have to edit the DHCP client daemon's config file to give details of a static address, it should just respect what's in network/interfaces.
network/interfaces is a configuration file for ifup. From Jessie onwards, it just specifies that ifup should ask dhcp for the data it needs using what I assume is a standardised API.
ifup and dhcpcd are the products of two different projects run by two different teams and distributors are free to choose any versions of either project to include in their distribution. If they had to agree on a fixed format for the network/interfaces file, then either one of them may encounter options that it did not understand. It is a recipe for confusion. It is worse than trying to write a web page that works for IE, Firefox, Chrome and Lynx.
It strikes me that if it were the case that only ifup was reading network/interfaces, then setting a static IP address the old way should still work, so long as "dhcp" was removed. If that is not happening then maybe something is already getting its configuration some other way, which proves my point about confusion.
Re: Raspbian's new insanely bad design decision: DHCP Static
What a mess.
Shouldn't systemd mange all this?
ducks....
Shouldn't systemd mange all this?
ducks....
Memory in C++ is a leaky abstraction .
- ShiftPlusOne
- Raspberry Pi Engineer & Forum Moderator
- Posts: 6383
- Joined: Fri Jul 29, 2011 5:36 pm
Re: Raspbian's new insanely bad design decision: DHCP Static
You joke, but perhaps in the future...Heater wrote:What a mess.
Shouldn't systemd mange all this?
ducks....
https://www.freedesktop.org/software/sy ... workd.html
- morphy_richards
- Posts: 1603
- Joined: Mon Mar 05, 2012 3:26 pm
- Location: Epping Forest
Re: Raspbian's new insanely bad design decision: DHCP Static
A nice newbie friendly wiki and magpi article would be good. (Sits on hands, I only just about managed to set a static IP, any of the cool things rurin mentioned are beyond me)