Skip to content

[isc-dhcp-relay] Patch to add '-si' option which causes relay agent to use ingress IP as src IP when relaying requests#4225

Closed
jleveque wants to merge 1756 commits intosonic-net:201911from
jleveque:dhcp_relay_source_ip
Closed

[isc-dhcp-relay] Patch to add '-si' option which causes relay agent to use ingress IP as src IP when relaying requests#4225
jleveque wants to merge 1756 commits intosonic-net:201911from
jleveque:dhcp_relay_source_ip

Conversation

@jleveque
Copy link
Contributor

@jleveque jleveque commented Mar 5, 2020

Test by passing -si argument when running dhcrelay

@jleveque
Copy link
Contributor Author

jleveque commented Mar 5, 2020

Retest vsimage please

3 similar comments
@jleveque
Copy link
Contributor Author

jleveque commented Mar 6, 2020

Retest vsimage please

@jleveque
Copy link
Contributor Author

jleveque commented Mar 6, 2020

Retest vsimage please

@jleveque
Copy link
Contributor Author

jleveque commented Mar 7, 2020

Retest vsimage please

lguohan
lguohan previously approved these changes Mar 9, 2020
@jleveque
Copy link
Contributor Author

Retest vsimage please

@jleveque
Copy link
Contributor Author

jleveque commented Aug 2, 2020

@lguohan: We have updated the version of isc-dhcp source in the master branch since this PR was created. I'm not sure that this patch will apply cleanly any longer.

qiluo-msft and others added 15 commits January 20, 2021 12:06
**- Why I did it**
swsssdk will be deprecated. Migrate sonic-config-engine to use libswsscommon library instead

**- How to verify it**
Unit test
…th prefix to fpmsyncd. (#4806)

Currently FRR is send Prefix with VNI information to FPMSYNCD. This PR allows FRR to send RMAC with EVPN Type5 prefix to fpmsyncd. This is a temp fix. This patch will be removed once neighorch is ready to handle the Prefix and ARP (containing RMAC) separately.
* support reproduceable build for git clone

Signed-off-by: shilongliu <shilongliu@microsoft.com>

* fix

Co-authored-by: shilongliu <shilongliu@microsoft.com>
Changes in this update:
37695c8 [show]: Use TCP Connection For Muxcable Commands (#1371)
8119ba2 Validations checks while creating and deleting a Portchannel (#1326)
3df267e [config] Fix Breakout mode option and BREAKOUT_CFG table check method (#1270)
9bd709b [show] Fix show arp in case with FDB entries, linked to default VLAN (#1357)
bc2d27e [generate_dump]: fix syntax error

signed-of-by: Tamer Ahmed <tamer.ahmed@microsoft.com>
Including below commits:

36f7332 2021-01-14 | modified ERR log to NOTICE log for FDB notification failure after VLAN delete (#1595) [madhanmellanox]
c21c883 2021-01-12 | [ci]: download artifacts from master branch build (#1597) [lguohan]
a1d03a4 2021-01-12 | [fgnhgorch] Match mode changes for Fine Grained ECMP (#1565) [anish-n]
1b65f3d 2021-01-12 | [ci]: use sonicbld pool (#1594) [lguohan]
48ae866 2021-01-12 | [pfcwd] Update PFC storm detection logic for Mellanox platforms (#1586) [Volodymyr Samotiy]
850001f 2021-01-12 | [FPMSYNCD] Evpn/Vxlan related changes to support FRR7.5(#1585) [KISHORE KUNAL]
64ca9bb 2021-01-12 | [ci]: only copy artifacts when build is successful (#1590) [lguohan]
17d0dae 2021-01-11 | [Fdborch] Fix for arm compilation (#1592) [Prince Sunny]
693a02c 2021-01-08 | [gearbox] Add support for "hwinfo" field (#1547) [Baptiste Covolato]
7e3b2c6 2021-01-09 | [Evpn Warmreboot] Added Dependancy check logic in VrfMgr (#1466) [nkelapur]
a960e2e 2021-01-09 | [Orchagent]: FdbOrch changes for EVPN VXLAN (#1275) [Pankaj Jain]
097cfda 2021-01-08 | [swss test] update setup guide for swss tests (#1582) [Ying Xie]
b42253a 2021-01-05 | Fix for armhf build (#1580) [Qi Luo]
d8c1465 2021-01-05 | [dvs] Update/disable DVS tests with new FRR 7.5 behavior (#1579) [Danny Allen]
f6c7422 2021-01-05 | ASIC internal temperature sensors support (#1517) [Santhosh Kumar T]
0aa9ef2 2021-01-01 | Simply by auto iterator type, because we will tune the return types of library functions (#1577) [Qi Luo]
773238b 2020-12-31 | [build]: Fix format string for size_t (#1576) [Qi Luo]
7ba4e43 2020-12-30 | [fgnhgorch] add warm reboot support for fgnhg (#1538) [weixchen1215]
4cf6617 2020-12-30 | [ci]: add build for arm64 and armhf (#1572) [lguohan]
6ebc0ed 2020-12-29 | [ci]: add azure-pipeline for amd64 (#1571) [lguohan]
e32b9d0 2020-12-29 | [FDBSYNCD] Added pytest for fdbsyncd (#1560) [KISHORE KUNAL]
a43f6be 2020-12-30 | [crm] Add support for snat, dnat and ipmc crm resources (#1511) [Prabhu Sreenivasan]
7fc3888 2020-12-29 | PY Test script for EVPN L3 VxLAN (#1330) [Tapash Das]
6eb36d9 2020-12-27 | vlanmgr changes related to EVPN VxLan warmboot (#1460) [anilkpan]

Signed-off-by: Guohan Lu <lguohan@gmail.com>
Update in this change:
640a218 [packaging]: Add Support For Libboost v1.71.0 (#449)

signed-off-by: Tamer Ahmed <tamer.ahmed@microsoft.com>
)

- Why I did it
Initially, we used Monit to monitor critical processes in each container. If one of critical processes was not running
or crashed due to some reasons, then Monit will write an alerting message into syslog periodically. If we add a new process
in a container, the corresponding Monti configuration file will also need to update. It is a little hard for maintenance.

Currently we employed event listener of Supervisod to do this monitoring. Since processes in each container are managed by
Supervisord, we can only focus on the logic of monitoring.

- How I did it
We borrowed the event listener of Supervisord to monitor critical processes in containers. The event listener will take
following steps if it was notified one of critical processes exited unexpectedly:

The event listener will first check whether the auto-restart mechanism was enabled for this container or not. If auto-restart mechanism was enabled, event listener will kill the Supervisord process, which should cause the container to exit and subsequently get restarted.

If auto-restart mechanism was not enabled for this contianer, the event listener will enter a loop which will first sleep 1 minute and then check whether the process is running. If yes, the event listener exits. If no, an alerting message will be written into syslog.

- How to verify it
First, we need checked whether the auto-restart mechanism of a container was enabled or not by running the command show feature status. If enabled, one critical process should be selected and killed manually, then we need check whether the container will be restarted or not.

Second, we can disable the auto-restart mechanism if it was enabled at step 1 by running the commnad sudo config feature autorestart <container_name> disabled. Then one critical process should be selected and killed. After that, we will see the alerting message which will appear in the syslog every 1 minute.

- Which release branch to backport (provide reason below if selected)

 201811
 201911
[x ] 202006
Meet the requirement for the MUX_CABLE table that IPv6 loopbacks have a /128 prefix

Note that this change only affects the MUX_CABLE table, all other tables continue to use the loopback address provided in minigraph.

Signed-off-by: Lawrence Lee <lawlee@microsoft.com>
**- Why I did it**

Ledd is the last daemon that is not enabled to run in python3.
Even though there is a plan to deprecate this daemon and to replace it by something else it's one simple step toward python2 deprecation.

**- How I did it**

Changed the `command=` line for `ledd` in the `supervisord` configuration of `pmon`.
Copied what was done for other daemons.

**- How to verify it**

Booting a product that has a `led_control.py` should now show the ledd running in python3.
I ran `python3 -m pylint` on all `led_control.py` plugin which means that most of them should be python3 compliant.
There is however still a risk that some might not work.
To make BBR configured for peer-group if it's name starts with (prefixed) with the string define in constants.yml instead of exact string match.
Signed-off-by: Arvindsrinivasan Lakshmi Narasimhan arlakshm@microsoft.com

- Why I did it
This PR has the changes to support having different swss.rec and sairedis.rec for each asic.
The logrotate script is updated as well

- How I did it

Update the orchagent.sh script to use the logfile name options in these PRs(sonic-net/sonic-swss#1546 and sonic-net/sonic-sairedis#747)
In multi asic platforms the record files will be different for each asic, with the format swss.asic{x}.rec and sairedis.asic{x}.rec

Update the logrotate script for multiasic platform .
…MMON (#6538)

Otherwise all the docker image derived from docker-config-engine-stretch will have broken SONIC_CONFIG_ENGINE_PY2
The bug is introduced in #6406
Sangita Maity and others added 14 commits February 26, 2021 00:13
…pport a… (#6831)

To fix [DPB| wrong aliases for interfaces](#6024) issue, implimented flexible alias support [design doc](sonic-net/SONiC#749)

> [[dpb|config] Fix the validation logic of breakout mode](sonic-net/sonic-utilities#1440) depends on this

#### How I did it

1. Removed `"alias_at_lanes"` from port-configuration file(i.e. platfrom.json) 
2. Added dictionary to "breakout_modes" values. This defines the breakout modes available on the platform for this parent port, and it maps to the alias list. The alias list presents the alias names for individual ports in order under this breakout mode.
```
{
    "interfaces": {
        "Ethernet0": {
            "index": "1,1,1,1",
            "lanes": "0,1,2,3",
            "breakout_modes": {
                "1x100G[40G]": ["Eth1"],
                "2x50G": ["Eth1/1", "Eth1/2"],
                "4x25G[10G]": ["Eth1/1", "Eth1/2", "Eth1/3", "Eth1/4"],
                "2x25G(2)+1x50G(2)": ["Eth1/1", "Eth1/2", "Eth1/3"],
                "1x50G(2)+2x25G(2)": ["Eth1/1", "Eth1/2", "Eth1/3"]
            }
        }
}
```
#### How to verify it
`config interface breakout`

Signed-off-by: Sangita Maity <samaity@linkedin.com>
Signed-off-by: Nazarii Hnydyn <nazariig@nvidia.com>
Signed-off-by: Nazarii Hnydyn <nazariig@nvidia.com>
…mbers (#6895)

#### Why I did it
Some platforms have difficult to attach egress ACL to vlan.

#### How I did it
For egress ACL attaching to vlan, break them into vlan members.

#### How to verify it
Unit test
Tested in DUT
1. Made the command next-hop-self force only applicable on back-end asic bgp. This is done so that BGPL iBGP session running on backend can send e-BGP learn nexthop. Back end asic FRR is able to recursively resolve the eBGP nexthop in its routing table since it knows about all the connected routes advertise from front end asic.

2. Made all front-end asic bgp use global loopback ip (Loopback0) as router id and back end asic bgp use Loopbacl4096 as ruter-id and originator id for Route-Reflector. This is done so that routes learnt by external peer do not see Loopback4096 as router id in show ip bgp <route-prerfix> output.

3. To handle above change need to pass Loopback4096 from BGP manager for jinja2 template generation. This was missing and this change/fix is needed for this also https://github.com/Azure/sonic-buildimage/blob/master/dockers/docker-fpm-frr/frr/bgpd/templates/dynamic/instance.conf.j2#L27

4. Enhancement to add mult_asic specific bgpd template generation unit test cases.
)

- Add support for VLAN ID match
- Add support for ICMP type/code match

Signed-off-by: Danny Allen <daall@microsoft.com>
1. [dni_dps460] Add attributes to retrieve PMBus status command codes sonic-net/sonic-linux-kernel@65fccd7
2. [mellanox]: Backport new kernel patches sonic-net/sonic-linux-kernel@2fcd4e3
3. [ci]: build amd64/armhf/arm64 for CI build sonic-net/sonic-linux-kernel@7c57fef
4. Fix read and write failure to ‘fan1_target’ attribute of ‘dni_dps460’ sonic-net/sonic-linux-kernel@fc74b1c
5. [backport]: i2c mux pca954x allow management of device idle state sonic-net/sonic-linux-kernel@173ebe7
6. README: Fix typo in *difficult* sonic-net/sonic-linux-kernel@7778c99
As of the merging of PR #6799, we are now installing a newer version of scapy via pip, therefore there is no longer a need to install the older Debian package.
- Why I did it
   Bug fixes
   - In rare cases when thermal algorithm is reactivated after FAN/PSU insertion, FAN remains at high rpm
   - When stop hw-management code received error in the log instead of exit code '0'.
   - In SPC1 i2c sometimes collide with chip reset coming from SDK
   - Remove raw eeprom data link, when working with PSU which don't have eeprom for "msn274x", "msn24xx" and "msn27xx" systems
   - Fix memory leak on mlxsw_core_bus_device module removal

- How I did it
Update the hw-mgmt version number in the make file
Update the hw-mgmt repo pointer

- How to verify it
run platform related test cases on all Mellanox platform

Signed-off-by: Kebo Liu <kebol@nvidia.com>
…ms (#6913)

- Why I did it
To fix PCIEd errors in log.

- How I did it
Update pcie.yaml with the right PCI addresses.

- How to verify it
Check logs, operation occurs each minute.

Signed-off-by: liora <liora@nvidia.com>
- Why I did it
To add support for the dynamic breakout on Mellanox platform x86_64-mlnx_msn4600

- How I did it
Add the relevant files describing Mellanox platform x86_64-mlnx_msn4600 breakout modes to a new device folder.

- How to verify it
System bringup is completed, all interfaces are up.
Platform tests suits all is passing.
- Made python2 to python3 changes
- Removed ord() func as python3 return int instead of str
- Had to change chr(..) to bytes([..]) function while using ctypes class methods
- Why I did it
Fix the build and fix the SN4600 DPB support

- How I did it
Fix port configuration file for SN4600 based on recent changes

- How to verify it
System bringup is completed, all interfaces are up.
Platform tests suits all is passing.
@tahmed-dev tahmed-dev requested review from a user and tahmed-dev March 2, 2021 22:20
daall and others added 8 commits March 2, 2021 14:32
There is a bug in how pyangbind translates yang models into python bindings. The model always sets integer values to 0 by default, so there is no way to check if a user has provided a value that is equal to 0. This is problematic for ICMP and VLAN (among others) because 0 is a valid input value.

This change converts ICMP and VLAN fields to union types so that acl-loader will treat them as null values unless a user explicitly adds an integer value.

Signed-off-by: Danny Allen <daall@microsoft.com>
…py-common (#6933)

Fix a strange bug introduced by #6832 which would only occur in environments with both Python 2 and Python 3 installed (e.g., the PMon container). Error messages such as the following would be seen:

```
ERR pmon#ledd[29]: Failed to load ledutil: module 'importlib' has no attribute 'machinery'
```

This is very odd, and it seems like the Python 2 version of importlib, which is basically just a stub, is taking precedence over the Python 3 version. I found that this occurs when calling `import importlib`. However, calling `import importlib.machinery` and `import importlib.util` causes the proper package to be referenced, and the `machinery` and `util` modules are loaded successfully. This is how it is specified in examples in the official documentation, however there is nothing mentioned regarding that it *should* be done this way or that `import importlib` is unreliable.

Also, since sonic-py-common is still used in environments with Python 2 installed we should maintain support for both Python 2 and 3 until we completely deprecate Python 2, so I have added this back in.
 - Provide `hw-management-generate-dump.sh` for `show techsupport`
 - Load `optoe3` for OSFP and QSFP-DD transceivers
 - Enhance reboot-cause caching robustness

Signed-off-by: Samuel Angebault <staphylo@arista.com>
To fix sonic_platform installation on as9516bf platform

Signed-off-by: Volodymyr Boyko <volodymyrx.boiko@intel.com>
…ingress source IP address when relaying requests
@ghost ghost changed the base branch from master to 201911 March 15, 2021 00:41
@ghost ghost requested a review from qiluo-msft March 15, 2021 00:41
@jleveque
Copy link
Contributor Author

Closing as superseded by #7052

@jleveque jleveque closed this Mar 15, 2021
@jleveque jleveque deleted the dhcp_relay_source_ip branch March 15, 2021 16:39
mssonicbld added a commit that referenced this pull request Feb 27, 2026
…lly (#25635)

#### Why I did it
src/sonic-swss
```
* b2c4e649 - (HEAD -> 202511, origin/202511) [202511][ssw][ha] vnetorch support primary/secondary live update for custom bfd (#4228) (6 hours ago) [Jing Zhang]
* d317c8f9 - [countersyncd]: Fix cargo bench compiling error (#4263) (17 hours ago) [mssonicbld]
* 725d6660 - [HFT]: keep STATE_DB session stream_status in sync with profile stream_state (#4190) (22 hours ago) [mssonicbld]
* fa01e8d2 - [countersyncd]: Modify the exit behavior of the main function (#4225) (27 hours ago) [mssonicbld]
* 82243e7f - [macsecmgr]: Fix MACsec unconfigure failures due to time out (#4233) (2 days ago) [mssonicbld]
* 8d476206 - [ci] Install redis from Debian (#4251) (3 days ago) [mssonicbld]
* 0c11b096 - [Bug] This patch is to fix a major bug in the for loop of the (#4173) (3 days ago) [ashishalok-arista]
```
#### How I did it
#### How to verify it
#### Description for the changelog
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.