I had a server unable to connect to any network and while wrangling with it I found a temporary resolution on running this command: /etc/init.d/network restart && dhclient
. However, I don't quite understand what exactly did the dhclient
command do to fix the issue? Any help is appreciated. Thanks!
What does dhclient do?
15.9k views Asked by Yong zhu At
1
There are 1 answers
Related Questions in NETWORKING
- Issues in Migration of RISCV Test Harness from VCS to Questasim Simulator
- Queue Scenario Help Getting Started
- Writing a simulation program in Python
- Java Card applet EEPROM vs RAM testing
- Simulate the use of a website with a client
- Verilog simulation x's in output
- Time step independence of Molecular Dynamics code
- How to code a arrival generator with a varying intensity rate
- Is it possible to build a heatmap from point data at 60 times per second?
- Verilog Testbench constant exp and pram compilation and simulation errors
Related Questions in ROUTES
- Issues in Migration of RISCV Test Harness from VCS to Questasim Simulator
- Queue Scenario Help Getting Started
- Writing a simulation program in Python
- Java Card applet EEPROM vs RAM testing
- Simulate the use of a website with a client
- Verilog simulation x's in output
- Time step independence of Molecular Dynamics code
- How to code a arrival generator with a varying intensity rate
- Is it possible to build a heatmap from point data at 60 times per second?
- Verilog Testbench constant exp and pram compilation and simulation errors
Related Questions in NETWORK-PROGRAMMING
- Issues in Migration of RISCV Test Harness from VCS to Questasim Simulator
- Queue Scenario Help Getting Started
- Writing a simulation program in Python
- Java Card applet EEPROM vs RAM testing
- Simulate the use of a website with a client
- Verilog simulation x's in output
- Time step independence of Molecular Dynamics code
- How to code a arrival generator with a varying intensity rate
- Is it possible to build a heatmap from point data at 60 times per second?
- Verilog Testbench constant exp and pram compilation and simulation errors
Related Questions in DHCP
- Issues in Migration of RISCV Test Harness from VCS to Questasim Simulator
- Queue Scenario Help Getting Started
- Writing a simulation program in Python
- Java Card applet EEPROM vs RAM testing
- Simulate the use of a website with a client
- Verilog simulation x's in output
- Time step independence of Molecular Dynamics code
- How to code a arrival generator with a varying intensity rate
- Is it possible to build a heatmap from point data at 60 times per second?
- Verilog Testbench constant exp and pram compilation and simulation errors
Related Questions in DHCLIENT
- Issues in Migration of RISCV Test Harness from VCS to Questasim Simulator
- Queue Scenario Help Getting Started
- Writing a simulation program in Python
- Java Card applet EEPROM vs RAM testing
- Simulate the use of a website with a client
- Verilog simulation x's in output
- Time step independence of Molecular Dynamics code
- How to code a arrival generator with a varying intensity rate
- Is it possible to build a heatmap from point data at 60 times per second?
- Verilog Testbench constant exp and pram compilation and simulation errors
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Popular Tags
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
The
dhclient
requests an IP address from a DHCP server (reference 1, reference 2).From what you are describing, it seems the following is happening:
Initially, none of the network interfaces on your machine have been assigned an IP address. Therefore, you are unable to connect to other servers with IP-based protocols. You can verify that no IP address has been assigned using
ip address
orifconfig -a
.You then start
dhclient
, which will use DHCP to request an IP address. It does so by sending a DHCP discovery message to the broadcast address of your network.There is a DHCP server running somewhere in your local network (e.g. on your router/gateway). The DHCP server receives the DHCP discovery message and reserves an IP address for your machine. The DHCP server sends back a DHCP offer message back to your machine (based on the link-layer address of your machine contained in the DHCP discovery message, i.e. the MAC address of your network interface). The DHCP offer message tells your machine which IP is being offered to it.
Your machine receives the DHCP offer message and replies with a DHCP request message for the offered IP address. The DHCP server replies with a DHCP acknowledgement message, telling you that the IP can be used by your machine now. Your network interface is configured for the assigned IP address. You can now connect to other servers with IP-based protocols.
The
dhclient
is similar in functionality todhcpd
, they only have some small differences in behavior, e.g.dhclient
will exit immediately if no broadcast interfaces are found, whereasdhcpd
will continue running in the background until an interface becomes available (reference).The alternative to using DHCP would be to assign a static IP to your machine.